Function at 0x100010a0
Capabilities:
Allocate or change rwx memory
Read file via mapping

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x198
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1a0], eax
mov eax, dword [0x10069800]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x19c], 0x3a75f5d2
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x1a4], eax
sub eax, 0x80ac3e18
je 0x100017a5
jmp 0x100010e5
mov eax, dword [ebp - 0x1a4]
sub eax, 0x810377ed
je 0x10001911
jmp 0x100010fb
mov eax, dword [ebp - 0x1a4]
sub eax, 0x839a4ba5
je 0x1000197f
jmp 0x10001111
mov eax, dword [ebp - 0x1a4]
sub eax, 0x87dfb8eb
je 0x100024ff
jmp 0x10001127
mov eax, dword [ebp - 0x1a4]
sub eax, 0x88ad9f8d
je 0x100029c9
jmp 0x1000113d
mov eax, dword [ebp - 0x1a4]
sub eax, 0x89e583cd
je 0x1000189f
jmp 0x10001153
mov eax, dword [ebp - 0x1a4]
sub eax, 0x9706c75f
je 0x10001d41
jmp 0x10001169
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa5c60d6f
je 0x1000247a
jmp 0x1000117f
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa8baabf7
je 0x10001f54
jmp 0x10001195
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa8ed9817
je 0x10002a5d
jmp 0x100011ab
mov eax, dword [ebp - 0x1a4]
sub eax, 0xaeb7cf22
je 0x1000237f
jmp 0x100011c1
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb0113298
je 0x10001c85
jmp 0x100011d7
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb0c4fb44
je 0x100025dd
jmp 0x100011ed
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb625831d
je 0x100029ba
jmp 0x10001203
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb656b789
je 0x100021f2
jmp 0x10001219
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb670a3a3
je 0x10002489
jmp 0x1000122f
mov eax, dword [ebp - 0x1a4]
sub eax, 0xba25f431
je 0x100019df
jmp 0x10001245
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc22d8159
je 0x10002666
jmp 0x1000125b
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc621e386
je 0x1000201a
jmp 0x10001271
mov eax, dword [ebp - 0x1a4]
sub eax, 0xcb89a3f7
je 0x100021e3
jmp 0x10001287
mov eax, dword [ebp - 0x1a4]
sub eax, 0xcf3d9d38
je 0x100029e4
jmp 0x1000129d
mov eax, dword [ebp - 0x1a4]
sub eax, 0xd5882de4
je 0x10001c34
jmp 0x100012b3
mov eax, dword [ebp - 0x1a4]
sub eax, 0xd64e4e8a
je 0x10001c04
jmp 0x100012c9
mov eax, dword [ebp - 0x1a4]
sub eax, 0xd7a94d11
je 0x10002153
jmp 0x100012df
mov eax, dword [ebp - 0x1a4]
sub eax, 0xdcf347df
je 0x100028f1
jmp 0x100012f5
mov eax, dword [ebp - 0x1a4]
sub eax, 0xde54fca0
je 0x10001abe
jmp 0x1000130b
mov eax, dword [ebp - 0x1a4]
sub eax, 0xdf21a99b
je 0x10001737
jmp 0x10001321
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe02c3b63
je 0x10001fac
jmp 0x10001337
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe8b2b7cd
je 0x10001b58
jmp 0x1000134d
mov eax, dword [ebp - 0x1a4]
sub eax, 0xeb71df67
je 0x1000209a
jmp 0x10001363
mov eax, dword [ebp - 0x1a4]
sub eax, 0xef3dd6c7
je 0x100020c1
jmp 0x10001379
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf956f5db
je 0x10002351
jmp 0x1000138f
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfa224f17
je 0x10002a00
jmp 0x100013a5
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfa4d95f0
je 0x10001b73
jmp 0x100013bb
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfa8c5a14
je 0x10002778
jmp 0x100013d1
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfbc88f1a
je 0x1000287d
jmp 0x100013e7
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfc8f00b5
je 0x10001ee1
jmp 0x100013fd
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfee333e7
je 0x10002a9f
jmp 0x10001413
mov eax, dword [ebp - 0x1a4]
sub eax, 0x2d75bbd
je 0x10002657
jmp 0x10001429
mov eax, dword [ebp - 0x1a4]
sub eax, 0xaaf3a5a
je 0x10001e40
jmp 0x1000143f
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfd532c2
je 0x1000258c
jmp 0x10001455
mov eax, dword [ebp - 0x1a4]
sub eax, 0x12db72a9
je 0x100028e2
jmp 0x1000146b
mov eax, dword [ebp - 0x1a4]
sub eax, 0x1a308b4a
je 0x1000204a
jmp 0x10001481
mov eax, dword [ebp - 0x1a4]
sub eax, 0x1c84616b
je 0x10001d50
jmp 0x10001497
mov eax, dword [ebp - 0x1a4]
sub eax, 0x1cda1495
je 0x10002029
jmp 0x100014ad
mov eax, dword [ebp - 0x1a4]
sub eax, 0x1f96458f
je 0x10001dbe
jmp 0x100014c3
mov eax, dword [ebp - 0x1a4]
sub eax, 0x29d9ec25
je 0x1000295d
jmp 0x100014d9
mov eax, dword [ebp - 0x1a4]
sub eax, 0x3199daad
je 0x10002695
jmp 0x100014ef
mov eax, dword [ebp - 0x1a4]
sub eax, 0x36c810aa
je 0x100018c0
jmp 0x10001505
mov eax, dword [ebp - 0x1a4]
sub eax, 0x3a75f5d2
je 0x10001704
jmp 0x1000151b
mov eax, dword [ebp - 0x1a4]
sub eax, 0x3d007c4b
je 0x1000210a
jmp 0x10001531
mov eax, dword [ebp - 0x1a4]
sub eax, 0x3d5089e6
je 0x10001be9
jmp 0x10001547
mov eax, dword [ebp - 0x1a4]
sub eax, 0x41ffb5dc
je 0x10001bc8
jmp 0x1000155d
mov eax, dword [ebp - 0x1a4]
sub eax, 0x42a02c25
je 0x10001b49
jmp 0x10001573
mov eax, dword [ebp - 0x1a4]
sub eax, 0x4625a946
je 0x10001e4f
jmp 0x10001589
mov eax, dword [ebp - 0x1a4]
sub eax, 0x4fcfd5ea
je 0x10001c25
jmp 0x1000159f
mov eax, dword [ebp - 0x1a4]
sub eax, 0x51023b0c
je 0x1000286b
jmp 0x100015b5
mov eax, dword [ebp - 0x1a4]
sub eax, 0x5420d9df
je 0x100023f5
jmp 0x100015cb
mov eax, dword [ebp - 0x1a4]
sub eax, 0x5a1f2459
je 0x10001e90
jmp 0x100015e1
mov eax, dword [ebp - 0x1a4]
sub eax, 0x5bcf5292
je 0x10002360
jmp 0x100015f7
mov eax, dword [ebp - 0x1a4]
sub eax, 0x5ca8158d
je 0x10002a6c
jmp 0x1000160d
mov eax, dword [ebp - 0x1a4]
sub eax, 0x60c4f2d1
je 0x1000222a
jmp 0x10001623
mov eax, dword [ebp - 0x1a4]
sub eax, 0x61f6924e
je 0x1000257d
jmp 0x10001639
mov eax, dword [ebp - 0x1a4]
sub eax, 0x62ffdefb
je 0x10002787
jmp 0x1000164f
mov eax, dword [ebp - 0x1a4]
sub eax, 0x63bdf8d9
je 0x1000198e
push eax
mov eax, esp
mov dword [ebp - 0x184], eax
push eax
mov eax, esp
mov dword [ebp - 0x180], eax
push eax
mov eax, esp
mov dword [ebp - 0x17c], eax
push eax
mov eax, esp
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x19c], 0xdf21a99b
jmp 0x10002aa9
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xfbc88f1a
mov ecx, 0x80ac3e18
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [ebp - 0x1a0]
push eax
mov ecx, esp
mov dword [ebp - 0x174], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x170], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x16c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x168], ecx
mov dword [ebp - 0x188], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x18c], eax
lea eax, [ebp - 0x120]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000cf40
add esp, 0xc
mov eax, dword [ebp - 0x188]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x190], eax
cmp dword [ebp - 0x190], 0
setne al
and al, 1
mov byte [ebp - 0x161], al
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xfbc88f1a
mov ecx, 0x89e583cd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dl, byte [ebp - 0x161]
mov eax, 0x36c810aa
mov ecx, 0x63bdf8d9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [0x1006ab40]
mov ecx, dword [0x1006ab3c]
mov edx, eax
add edx, 0xed1b2289
sub edx, 1
sub edx, 0xed1b2289
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x12db72a9
mov ecx, 0x810377ed
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x12db72a9
mov ecx, 0x839a4ba5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x62ffdefb
jmp 0x10002aa9
mov ecx, dword [ebp - 0x190]
mov edx, dword [ebp - 0x18c]
lea eax, [ebp - 0x120]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xc
call sub.KERNEL32.dll_K32GetModuleInformation
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x194], eax
lea eax, [ebp - 0x114]
mov ecx, dword [ebp - 0x190]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x114]
mov dword [ebp - 0x160], eax
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
mov edx, ecx
add edx, 0xcb57cefb
sub edx, 1
sub edx, 0xcb57cefb
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xdcf347df
mov ecx, 0xde54fca0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x78382015
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x62ffdefb
jmp 0x10002aa9
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x19c], 0xfa4d95f0
jmp 0x10002aa9
mov eax, dword [ebp - 0x15c]
xor ecx, ecx
sub esp, 0x18
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x1000002
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov ecx, eax
mov eax, dword [ebp - 0x184]
mov dword [eax], ecx
mov dword [ebp - 0x19c], 0x41ffb5dc
jmp 0x10002aa9
mov edx, dword [ebp - 0x184]
mov eax, 0x3d5089e6
mov ecx, 0xd5882de4
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x19c], 0xd64e4e8a
jmp 0x10002aa9
mov eax, dword [ebp - 0x158]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x19c], 0x4fcfd5ea
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x62ffdefb
jmp 0x10002aa9
mov eax, dword [0x1006ab40]
mov ecx, dword [0x1006ab3c]
mov edx, eax
add edx, 0x3e5ebef1
sub edx, 1
sub edx, 0x3e5ebef1
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x29d9ec25
mov ecx, 0xb0113298
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
xor ecx, ecx
sub esp, 0x14
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ecx, eax
mov eax, dword [ebp - 0x180]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x17c]
mov dword [eax], ecx
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x29d9ec25
mov ecx, 0x9706c75f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x1c84616b
jmp 0x10002aa9
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xb625831d
mov ecx, 0x1f96458f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x154], eax
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
mov edx, ecx
add edx, 0x490e9358
sub edx, 1
sub edx, 0x490e9358
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xb625831d
mov ecx, 0xaaf3a5a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x4625a946
jmp 0x10002aa9
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x154]
sub ecx, 0x4a5f9f43
add ecx, eax
add ecx, 0x4a5f9f43
mov eax, dword [ebp - 0x178]
mov dword [eax], ecx
mov eax, dword [ebp - 0x174]
mov word [eax], 0
mov dword [ebp - 0x19c], 0x5a1f2459
jmp 0x10002aa9
mov eax, dword [0x1006ab40]
mov ecx, dword [0x1006ab3c]
mov edx, eax
add edx, 0x6b9ed0a7
sub edx, 1
sub edx, 0x6b9ed0a7
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x88ad9f8d
mov ecx, 0xfc8f00b5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [ebp - 0x174]
movzx eax, word [eax]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov ax, word [eax + 6]
mov word [ebp - 0x14c], ax
mov eax, dword [0x1006ab40]
mov ecx, dword [0x1006ab3c]
mov edx, eax
sub edx, 0x1db740a9
sub edx, 1
add edx, 0x1db740a9
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x88ad9f8d
mov ecx, 0xa8baabf7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x7110823d
jmp 0x10002aa9
mov ax, word [ebp - 0x14c]
movzx ecx, ax
mov eax, dword [ebp - 0x150]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x149], al
mov eax, dword [0x1006ab40]
mov ecx, dword [0x1006ab3c]
mov edx, eax
sub edx, 0xebc0084f
sub edx, 1
add edx, 0xebc0084f
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xcf3d9d38
mov ecx, 0xc621e386
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x1cda1495
jmp 0x10002aa9
mov dl, byte [ebp - 0x149]
mov eax, 0xfd532c2
mov ecx, 0x1a308b4a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x18
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, dword [ebp - 0x178]
mov ecx, dword [ecx]
movzx edx, word [ecx + 0x14]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x174]
movzx eax, word [eax]
imul eax, eax, 0x28
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x19c], 0xeb71df67
jmp 0x10002aa9
mov eax, dword [ebp - 0x148]
mov edx, dword [ebp - 0x144]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x19c], 0xef3dd6c7
jmp 0x10002aa9
mov eax, dword [ebp - 0x170]
mov ecx, dword [ebp - 0x140]
mov dword [eax], ecx
mov eax, dword [ebp - 0x170]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100193b0
call fcn.1000f2b0
add esp, 8
mov edx, eax
mov eax, 0x3d007c4b
mov ecx, 0xf956f5db
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [0x1006ab40]
mov ecx, dword [0x1006ab3c]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xfa224f17
mov ecx, 0xd7a94d11
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [ebp - 0x16c]
mov dword [eax], 0
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov dword [ebp - 0x13c], eax
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
mov edx, ecx
sub edx, 0xbec92df6
sub edx, 1
add edx, 0xbec92df6
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xfa224f17
mov ecx, 0xcb89a3f7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0xb656b789
jmp 0x10002aa9
mov eax, dword [ebp - 0x13c]
mov eax, dword [eax + 8]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x19c], 0x60c4f2d1
jmp 0x10002aa9
mov eax, dword [ebp - 0x130]
mov edx, dword [eax + 0xc]
mov ecx, dword [ebp - 0x134]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor edx, edx
sub edx, eax
mov eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x138]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x40
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x168]
mov byte [eax], cl
mov edx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0xf4a61a51
add edx, eax
add edx, 0xf4a61a51
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, esi
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov eax, dword [eax + 8]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1000d0a0
add esp, 0xc
mov eax, dword [ebp - 0x16c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x194]
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
xor esi, esi
sub esi, edi
add eax, esi
xor esi, esi
sub esi, eax
mov eax, dword [ebp - 0x16c]
sub esp, 0x10
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x168]
mov byte [eax], cl
mov dword [ebp - 0x19c], 0xf956f5db
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x5bcf5292
jmp 0x10002aa9
mov eax, dword [ebp - 0x174]
mov ax, word [eax]
mov word [ebp - 0x12c], ax
mov dword [ebp - 0x19c], 0xaeb7cf22
jmp 0x10002aa9
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
mov edx, ecx
add edx, 0x5a64404
sub edx, 1
sub edx, 0x5a64404
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x7e410b78
mov ecx, 0x5420d9df
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov ax, word [ebp - 0x12c]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x12a], ax
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x7e410b78
mov ecx, 0xa5c60d6f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0xb670a3a3
jmp 0x10002aa9
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
mov edx, ecx
sub edx, 0xe9ac34cd
sub edx, 1
add edx, 0xe9ac34cd
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x6fa6d2d1
mov ecx, 0x87dfb8eb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [ebp - 0x174]
mov cx, word [ebp - 0x12a]
mov word [eax], cx
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x6fa6d2d1
mov ecx, 0x61f6924e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x5a1f2459
jmp 0x10002aa9
mov eax, dword [0x1006ab40]
mov ecx, dword [0x1006ab3c]
mov edx, eax
add edx, 0x4ce1700
sub edx, 1
sub edx, 0x4ce1700
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xa8ed9817
mov ecx, 0xb0c4fb44
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x128], eax
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xa8ed9817
mov ecx, 0x2d75bbd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0xc22d8159
jmp 0x10002aa9
mov eax, dword [ebp - 0x128]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x19c], 0x3199daad
jmp 0x10002aa9
mov eax, dword [0x1006ab40]
mov ecx, dword [0x1006ab3c]
mov edx, eax
add edx, 0x6097ce84
sub edx, 1
sub edx, 0x6097ce84
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x5ca8158d
mov ecx, 0x7b84f8ca
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x62ffdefb
jmp 0x10002aa9
mov ecx, dword [0x1006ab40]
mov eax, dword [0x1006ab3c]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xfee333e7
mov ecx, 0x6d813a11
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x10002aa9
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000c340
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x188], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x18c], eax
lea eax, [ebp - 0x120]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000cf40
add esp, 0xc
mov eax, dword [ebp - 0x188]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x19c], 0x80ac3e18
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x810377ed
jmp 0x10002aa9
mov ecx, dword [ebp - 0x190]
mov edx, dword [ebp - 0x18c]
lea eax, [ebp - 0x120]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xc
call sub.KERNEL32.dll_K32GetModuleInformation
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x194], eax
lea eax, [ebp - 0x114]
mov ecx, dword [ebp - 0x190]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov dword [ebp - 0x19c], 0xba25f431
jmp 0x10002aa9
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
xor ecx, ecx
sub esp, 0x14
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov ecx, eax
mov eax, dword [ebp - 0x180]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x17c]
mov dword [eax], ecx
mov dword [ebp - 0x19c], 0xb0113298
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x1f96458f
jmp 0x10002aa9
mov eax, dword [ebp - 0x174]
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x19c], 0xfc8f00b5
jmp 0x10002aa9
mov ax, word [ebp - 0x14c]
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x19c], 0xe02c3b63
jmp 0x10002aa9
mov eax, dword [ebp - 0x16c]
mov dword [eax], 0
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x19c], 0xd7a94d11
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0xb0c4fb44
jmp 0x10002aa9
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x18c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x19c], 0x7b84f8ca
jmp 0x10002aa9
mov dword [ebp - 0x19c], 0x6d813a11
jmp 0x100010c9