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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x1a8
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1ac], eax
mov eax, dword [0x10085c80]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x1a8], 0xe7315ad0
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1b0], eax
sub eax, 0x865a24aa
je 0x1000ae2b
jmp 0x100098a4
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9449d4fa
je 0x1000a29d
jmp 0x100098ba
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9805309c
je 0x1000ad9b
jmp 0x100098d0
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa467d056
je 0x1000aec1
jmp 0x100098e6
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa492e15c
je 0x10009f22
jmp 0x100098fc
mov eax, dword [ebp - 0x1b0]
sub eax, 0xabc2e305
je 0x1000a301
jmp 0x10009912
mov eax, dword [ebp - 0x1b0]
sub eax, 0xaf468e56
je 0x1000a908
jmp 0x10009928
mov eax, dword [ebp - 0x1b0]
sub eax, 0xbcb7601e
je 0x1000ac6e
jmp 0x1000993e
mov eax, dword [ebp - 0x1b0]
sub eax, 0xbee16d26
je 0x10009f31
jmp 0x10009954
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc4b4f5be
je 0x1000ae3a
jmp 0x1000996a
mov eax, dword [ebp - 0x1b0]
sub eax, 0xca6499cb
je 0x1000ab40
jmp 0x10009980
mov eax, dword [ebp - 0x1b0]
sub eax, 0xce844149
je 0x1000ac3c
jmp 0x10009996
mov eax, dword [ebp - 0x1b0]
sub eax, 0xcfa087ce
je 0x1000ad69
jmp 0x100099ac
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd341d654
je 0x1000a11a
jmp 0x100099c2
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd8b64593
je 0x1000af22
jmp 0x100099d8
mov eax, dword [ebp - 0x1b0]
sub eax, 0xdfda1684
je 0x1000a6b2
jmp 0x100099ee
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe39b55eb
je 0x1000a033
jmp 0x10009a04
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe3cc1a7d
je 0x1000ac7d
jmp 0x10009a1a
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe7315ad0
je 0x10009e3f
jmp 0x10009a30
mov eax, dword [ebp - 0x1b0]
sub eax, 0xeb150e10
je 0x1000a9eb
jmp 0x10009a46
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf14f2225
je 0x1000a322
jmp 0x10009a5c
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf537b3e5
je 0x1000a1ab
jmp 0x10009a72
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf5a0deaa
je 0x10009f82
jmp 0x10009a88
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf8654c64
je 0x1000a5eb
jmp 0x10009a9e
mov eax, dword [ebp - 0x1b0]
sub eax, 0xfa5d60bf
je 0x1000ade3
jmp 0x10009ab4
mov eax, dword [ebp - 0x1b0]
sub eax, 0x127139b
je 0x1000ad5a
jmp 0x10009aca
mov eax, dword [ebp - 0x1b0]
sub eax, 0x232668e
je 0x1000a3b1
jmp 0x10009ae0
mov eax, dword [ebp - 0x1b0]
sub eax, 0x5a177fc
je 0x1000a885
jmp 0x10009af6
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd66e42d
je 0x1000a7eb
jmp 0x10009b0c
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf444116
je 0x1000ae86
jmp 0x10009b22
mov eax, dword [ebp - 0x1b0]
sub eax, 0x136e2b45
je 0x1000a6f3
jmp 0x10009b38
mov eax, dword [ebp - 0x1b0]
sub eax, 0x145c75f7
je 0x1000a436
jmp 0x10009b4e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x14c308cb
je 0x1000a834
jmp 0x10009b64
mov eax, dword [ebp - 0x1b0]
sub eax, 0x161dfb03
je 0x1000ae77
jmp 0x10009b7a
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1c3615b9
je 0x1000a360
jmp 0x10009b90
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1e61fbf8
je 0x1000acae
jmp 0x10009ba6
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1f76e373
je 0x1000a54d
jmp 0x10009bbc
mov eax, dword [ebp - 0x1b0]
sub eax, 0x237d1eb3
je 0x10009f01
jmp 0x10009bd2
mov eax, dword [ebp - 0x1b0]
sub eax, 0x24d9fd00
je 0x1000abc5
jmp 0x10009be8
mov eax, dword [ebp - 0x1b0]
sub eax, 0x2abc5e4c
je 0x1000a0a1
jmp 0x10009bfe
mov eax, dword [ebp - 0x1b0]
sub eax, 0x2bc0cd07
je 0x1000a221
jmp 0x10009c14
mov eax, dword [ebp - 0x1b0]
sub eax, 0x303f6864
je 0x1000a5dc
jmp 0x10009c2a
mov eax, dword [ebp - 0x1b0]
sub eax, 0x330a4657
je 0x1000a2ac
jmp 0x10009c40
mov eax, dword [ebp - 0x1b0]
sub eax, 0x335a6507
je 0x1000acff
jmp 0x10009c56
mov eax, dword [ebp - 0x1b0]
sub eax, 0x344fc3b7
je 0x1000ab4f
jmp 0x10009c6c
mov eax, dword [ebp - 0x1b0]
sub eax, 0x362ce4d4
je 0x1000a4b0
jmp 0x10009c82
mov eax, dword [ebp - 0x1b0]
sub eax, 0x383a06ea
je 0x1000ad8a
jmp 0x10009c98
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3bb59599
je 0x1000a634
jmp 0x10009cae
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3c89f8d2
je 0x1000a6c1
jmp 0x10009cc4
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3d41b409
je 0x1000ae16
jmp 0x10009cda
mov eax, dword [ebp - 0x1b0]
sub eax, 0x407c6517
je 0x1000a795
jmp 0x10009cf0
mov eax, dword [ebp - 0x1b0]
sub eax, 0x442fad92
je 0x1000ae62
jmp 0x10009d06
mov eax, dword [ebp - 0x1b0]
sub eax, 0x47cff32c
je 0x1000a19c
jmp 0x10009d1c
mov eax, dword [ebp - 0x1b0]
sub eax, 0x48545799
je 0x1000ac1d
jmp 0x10009d32
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4b32d8eb
je 0x1000a929
jmp 0x10009d48
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4cd623af
je 0x1000a4d7
jmp 0x10009d5e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x52f83932
je 0x1000a427
jmp 0x10009d74
mov eax, dword [ebp - 0x1b0]
sub eax, 0x5cd85593
je 0x1000a33f
jmp 0x10009d8a
mov eax, dword [ebp - 0x1b0]
sub eax, 0x5f4dfb7f
je 0x1000af31
jmp 0x10009da0
mov eax, dword [ebp - 0x1b0]
sub eax, 0x6126feae
je 0x1000a7b6
jmp 0x10009db6
mov eax, dword [ebp - 0x1b0]
sub eax, 0x62175f72
je 0x1000a024
jmp 0x10009dcc
mov eax, dword [ebp - 0x1b0]
sub eax, 0x6b832430
je 0x1000ac0e
jmp 0x10009de2
mov eax, dword [ebp - 0x1b0]
sub eax, 0x721e455a
je 0x1000aa44
jmp 0x10009df8
mov eax, dword [ebp - 0x1b0]
sub eax, 0x78b7922b
je 0x1000a129
jmp 0x10009e0e
mov eax, dword [ebp - 0x1b0]
sub eax, 0x78fbb547
je 0x1000aa95
mov eax, dword [ebp - 0x1ac]
push eax
mov ecx, esp
mov dword [ebp - 0x194], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x190], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x18c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x188], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x184], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x180], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x17c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x178], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x174], ecx
mov dword [ebp - 0x198], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x19c], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10025b60
add esp, 0xc
mov eax, dword [ebp - 0x198]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x1a8], 0x237d1eb3
jmp 0x1000af4d
mov edx, dword [ebp - 0x170]
mov eax, 0xa492e15c
mov ecx, 0xbee16d26
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x383a06ea
jmp 0x1000af4d
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
mov edx, eax
sub edx, 0xbefed90e
sub edx, 1
add edx, 0xbefed90e
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, 0x9805309c
mov ecx, 0xf5a0deaa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov ecx, dword [ebp - 0x1a0]
mov edx, dword [ebp - 0x19c]
lea eax, [ebp - 0x11c]
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 - 0x11c]
mov dword [ebp - 0x1a4], eax
lea eax, [ebp - 0x110]
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x168], eax
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
mov edx, eax
sub edx, 0x5fbc7ce5
sub edx, 1
add edx, 0x5fbc7ce5
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, 0x9805309c
mov ecx, 0x62175f72
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0xe39b55eb
jmp 0x1000af4d
mov ecx, dword [0x10087184]
mov eax, dword [0x10087180]
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, 0xfa5d60bf
mov ecx, 0x2abc5e4c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x168]
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 - 0x110]
mov dword [ebp - 0x164], eax
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
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, 0xfa5d60bf
mov ecx, 0xd341d654
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x78b7922b
jmp 0x1000af4d
mov eax, dword [ebp - 0x164]
xor ecx, ecx
sub esp, 0x1c
mov dword [esp], eax
mov dword [esp + 4], 0x80000000
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov ecx, eax
mov eax, dword [ebp - 0x194]
mov dword [eax], ecx
mov edx, dword [ebp - 0x194]
mov esi, 0xffffffff
mov eax, 0xf537b3e5
mov ecx, 0x47cff32c
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x383a06ea
jmp 0x1000af4d
mov ecx, dword [0x10087184]
mov eax, dword [0x10087180]
mov edx, ecx
add edx, 0x25189826
sub edx, 1
sub edx, 0x25189826
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, 0x3d41b409
mov ecx, 0x2bc0cd07
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov eax, dword [ebp - 0x194]
mov eax, dword [eax]
mov dword [ebp - 0x160], eax
mov ecx, dword [0x10087184]
mov eax, dword [0x10087180]
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, 0x3d41b409
mov ecx, 0x9449d4fa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x330a4657
jmp 0x1000af4d
mov eax, dword [ebp - 0x160]
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 - 0x190]
mov dword [eax], ecx
mov dword [ebp - 0x1a8], 0xabc2e305
jmp 0x1000af4d
mov edx, dword [ebp - 0x190]
mov eax, 0xf14f2225
mov ecx, 0x145c75f7
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov eax, dword [ebp - 0x194]
mov eax, dword [eax]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x1a8], 0x5cd85593
jmp 0x1000af4d
mov eax, dword [ebp - 0x15c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0x1c3615b9
jmp 0x1000af4d
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
mov edx, eax
sub edx, 0x3b9f6ce0
sub edx, 1
add edx, 0x3b9f6ce0
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, 0x865a24aa
mov ecx, 0x232668e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov ecx, dword [0x10087184]
mov eax, dword [0x10087180]
mov edx, ecx
sub edx, 0xac604e81
sub edx, 1
add edx, 0xac604e81
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, 0x865a24aa
mov ecx, 0x52f83932
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x383a06ea
jmp 0x1000af4d
mov eax, dword [ebp - 0x190]
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 - 0x18c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1a4]
mov eax, dword [ebp - 0x188]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x188]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1a8], 0x362ce4d4
jmp 0x1000af4d
mov eax, dword [ebp - 0x158]
mov edx, dword [ebp - 0x154]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x1a8], 0x4cd623af
jmp 0x1000af4d
mov ecx, dword [0x10087184]
mov eax, dword [0x10087180]
mov edx, ecx
sub edx, 0xe7bfbcdd
sub edx, 1
add edx, 0xe7bfbcdd
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, 0xc4b4f5be
mov ecx, 0x1f76e373
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x150]
mov dword [eax], ecx
mov eax, dword [ebp - 0x180]
mov word [eax], 0
mov ecx, dword [0x10087184]
mov eax, dword [0x10087180]
mov edx, ecx
add edx, 0xb81c40ad
sub edx, 1
sub edx, 0xb81c40ad
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, 0xc4b4f5be
mov ecx, 0x303f6864
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0xf8654c64
jmp 0x1000af4d
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
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, 0x442fad92
mov ecx, 0x3bb59599
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov eax, dword [ebp - 0x180]
mov ax, word [eax]
mov word [ebp - 0x14c], ax
mov ecx, dword [0x10087184]
mov eax, dword [0x10087180]
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, 0x442fad92
mov ecx, 0xdfda1684
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x3c89f8d2
jmp 0x1000af4d
mov ax, word [ebp - 0x14c]
movzx eax, ax
mov ecx, dword [ebp - 0x184]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 6]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x149], al
mov dword [ebp - 0x1a8], 0x136e2b45
jmp 0x1000af4d
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
mov edx, eax
add edx, 0x9a7222e3
sub edx, 1
sub edx, 0x9a7222e3
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, 0x161dfb03
mov ecx, 0x7f4fae1c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dl, byte [ebp - 0x149]
mov eax, 0xe3cc1a7d
mov ecx, 0x6126feae
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
add eax, 4
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x1a8], 0xd66e42d
jmp 0x1000af4d
mov eax, dword [ebp - 0x144]
movzx ecx, word [eax + 0x10]
mov eax, dword [ebp - 0x148]
sub eax, 0xeabb372
add eax, ecx
add eax, 0xeabb372
mov ecx, dword [ebp - 0x180]
movzx ecx, word [ecx]
imul ecx, ecx, 0x28
sub eax, 0x5c19ee3f
add eax, ecx
add eax, 0x5c19ee3f
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x1a8], 0x14c308cb
jmp 0x1000af4d
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
mov edx, eax
sub edx, 0x9622ec55
sub edx, 1
add edx, 0x9622ec55
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, 0xf444116
mov ecx, 0x5a177fc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov ecx, dword [ebp - 0x140]
mov eax, dword [ebp - 0x17c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x17c]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10033c7d
call fcn.100294c0
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x139], al
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
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, 0xf444116
mov ecx, 0xaf468e56
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dl, byte [ebp - 0x139]
mov eax, 0x4b32d8eb
mov ecx, 0x344fc3b7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov eax, dword [ebp - 0x178]
mov dword [eax], 0
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x1a4]
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub edx, eax
mov eax, dword [ebp - 0x178]
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 - 0x174]
mov byte [eax], cl
mov eax, dword [ebp - 0x1a4]
mov ecx, dword [ebp - 0x17c]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x17c]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x1a8], 0xeb150e10
jmp 0x1000af4d
mov eax, dword [ebp - 0x130]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x138]
mov ecx, dword [ebp - 0x134]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10025cc0
add esp, 0xc
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x1a8], 0x721e455a
jmp 0x1000af4d
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
mov edx, eax
sub edx, 0xadd2af91
sub edx, 1
add edx, 0xadd2af91
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, 0xa467d056
mov ecx, 0x78fbb547
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x344fc3b7
jmp 0x1000af4d
mov ecx, dword [0x10087184]
mov eax, dword [0x10087180]
mov edx, ecx
add edx, 0xa21fb729
sub edx, 1
sub edx, 0xa21fb729
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, 0xd8b64593
mov ecx, 0x24d9fd00
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
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, 0xd8b64593
mov ecx, 0x6b832430
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x48545799
jmp 0x1000af4d
mov eax, dword [ebp - 0x180]
mov ax, word [eax]
mov word [ebp - 0x122], ax
mov dword [ebp - 0x1a8], 0xce844149
jmp 0x1000af4d
mov cx, word [ebp - 0x122]
xor eax, eax
sub ax, cx
xor ecx, ecx
sub cx, 1
add ax, cx
xor ecx, ecx
sub cx, ax
mov eax, dword [ebp - 0x180]
mov word [eax], cx
mov dword [ebp - 0x1a8], 0xbcb7601e
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0xf8654c64
jmp 0x1000af4d
mov eax, dword [ebp - 0x194]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x190]
mov eax, dword [eax]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x1a8], 0x1e61fbf8
jmp 0x1000af4d
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
mov edx, eax
sub edx, 0x4976501c
sub edx, 1
add edx, 0x4976501c
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, 0x5f4dfb7f
mov ecx, 0x335a6507
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x10087184]
mov ecx, dword [0x10087180]
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, 0x5f4dfb7f
mov ecx, 0x127139b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0xcfa087ce
jmp 0x1000af4d
mov eax, dword [ebp - 0x19c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0x383a06ea
jmp 0x1000af4d
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.10024dc0
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x1a0]
mov edx, dword [ebp - 0x19c]
lea eax, [ebp - 0x11c]
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 - 0x11c]
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a8], 0xf5a0deaa
jmp 0x1000af4d
mov eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x168]
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 - 0x1a8], 0x2abc5e4c
jmp 0x1000af4d
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x1a8], 0x2bc0cd07
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x232668e
jmp 0x1000af4d
mov eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x150]
mov dword [eax], ecx
mov eax, dword [ebp - 0x180]
mov word [eax], 0
mov dword [ebp - 0x1a8], 0x1f76e373
jmp 0x1000af4d
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x1a8], 0x3bb59599
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x7f4fae1c
jmp 0x1000af4d
mov ecx, dword [ebp - 0x140]
mov eax, dword [ebp - 0x17c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x17c]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10033c7d
call fcn.100294c0
add esp, 8
mov dword [ebp - 0x1a8], 0x5a177fc
jmp 0x1000af4d
mov esi, dword [ebp - 0x1a4]
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
sub esi, eax
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ebp - 0x128]
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 - 0x174]
mov byte [eax], cl
mov dword [ebp - 0x1a8], 0x78fbb547
jmp 0x1000af4d
mov dword [ebp - 0x1a8], 0x24d9fd00
jmp 0x1000af4d
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0x335a6507
jmp 0x10009888