Assembler code
.text:1001577C
.text:1001577C ; =============== S U B R O U T I N E =======================================
.text:1001577C
.text:1001577C
.text:1001577C ; BOOL __stdcall DllEntryPoint(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved)
.text:1001577C EXPORT DllEntryPoint
.text:1001577C DllEntryPoint ; DATA XREF: .pdata:1001BB70↓o
.text:1001577C PUSH {R4-R8,LR}
.text:10015780 MOV R7, R2
.text:10015784 MOV R6, R1
.text:10015788 MOV R8, R0
.text:1001578C LDR R5, =dword_1001AD20
.text:10015790 CMP R6, #1
.text:10015794 BNE loc_100157BC
.text:10015798 LDR R3, [R5]
.text:1001579C CMP R3, #0
.text:100157A0 BEQ loc_100157B8
.text:100157A4 MOV R1, #1
.text:100157A8 MOV LR, PC
.text:100157AC BX R3
.text:100157B0 MOVS R4, R0
.text:100157B4 BEQ loc_10015804
.text:100157B8
.text:100157B8 loc_100157B8 ; CODE XREF: DllEntryPoint+24↑j
.text:100157B8 BL sub_100155D8
.text:100157BC
.text:100157BC loc_100157BC ; CODE XREF: DllEntryPoint+18↑j
.text:100157BC MOV R2, R7
.text:100157C0 MOV R1, R6
.text:100157C4 MOV R0, R8
.text:100157C8 BL sub_10003C18
.text:100157CC MOV R4, R0
.text:100157D0 CMP R6, #0
.text:100157D4 BNE loc_10015804
.text:100157D8 BL sub_10015760