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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x9c
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa0], eax
mov eax, dword [0x1008c880]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x1008dd84]
mov eax, dword [0x1008dd80]
mov edx, ecx
add edx, 0x2214b25b
sub edx, 1
sub edx, 0x2214b25b
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x96], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x95], al
mov dword [ebp - 0x9c], 0xf3ff4ec0
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xa4], eax
sub eax, 0x80c78dbc
je 0x1000a2f5
jmp 0x10009543
mov eax, dword [ebp - 0xa4]
sub eax, 0x8601dff3
je 0x1000a97b
jmp 0x10009559
mov eax, dword [ebp - 0xa4]
sub eax, 0x888d99d1
je 0x1000aad9
jmp 0x1000956f
mov eax, dword [ebp - 0xa4]
sub eax, 0x8d6d1ed2
je 0x1000a3c0
jmp 0x10009585
mov eax, dword [ebp - 0xa4]
sub eax, 0x8fc71cd8
je 0x1000ab1e
jmp 0x1000959b
mov eax, dword [ebp - 0xa4]
sub eax, 0x9132b8b3
je 0x1000aa2d
jmp 0x100095b1
mov eax, dword [ebp - 0xa4]
sub eax, 0x95068ffd
je 0x10009c94
jmp 0x100095c7
mov eax, dword [ebp - 0xa4]
sub eax, 0x9f1fa68f
je 0x1000a21c
jmp 0x100095dd
mov eax, dword [ebp - 0xa4]
sub eax, 0x9f9f3d05
je 0x1000a0d1
jmp 0x100095f3
mov eax, dword [ebp - 0xa4]
sub eax, 0xa606c21f
je 0x1000aa8a
jmp 0x10009609
mov eax, dword [ebp - 0xa4]
sub eax, 0xaa5a83af
je 0x1000a5fd
jmp 0x1000961f
mov eax, dword [ebp - 0xa4]
sub eax, 0xaa83ee09
je 0x1000a139
jmp 0x10009635
mov eax, dword [ebp - 0xa4]
sub eax, 0xb114b3ab
je 0x10009e70
jmp 0x1000964b
mov eax, dword [ebp - 0xa4]
sub eax, 0xb13a3193
je 0x10009b9a
jmp 0x10009661
mov eax, dword [ebp - 0xa4]
sub eax, 0xb305398b
je 0x1000a861
jmp 0x10009677
mov eax, dword [ebp - 0xa4]
sub eax, 0xb7123e2f
je 0x1000a96c
jmp 0x1000968d
mov eax, dword [ebp - 0xa4]
sub eax, 0xbaaba9fb
je 0x1000a93a
jmp 0x100096a3
mov eax, dword [ebp - 0xa4]
sub eax, 0xbd6b8ab7
je 0x1000a3ef
jmp 0x100096b9
mov eax, dword [ebp - 0xa4]
sub eax, 0xbd794a45
je 0x1000a4cb
jmp 0x100096cf
mov eax, dword [ebp - 0xa4]
sub eax, 0xc1508695
je 0x1000a20d
jmp 0x100096e5
mov eax, dword [ebp - 0xa4]
sub eax, 0xc77e2d49
je 0x1000a3a0
jmp 0x100096fb
mov eax, dword [ebp - 0xa4]
sub eax, 0xc8bdabdc
je 0x10009ee6
jmp 0x10009711
mov eax, dword [ebp - 0xa4]
sub eax, 0xd0b16cb2
je 0x1000a852
jmp 0x10009727
mov eax, dword [ebp - 0xa4]
sub eax, 0xd198d756
je 0x1000aa13
jmp 0x1000973d
mov eax, dword [ebp - 0xa4]
sub eax, 0xd6fe48a3
je 0x1000a06f
jmp 0x10009753
mov eax, dword [ebp - 0xa4]
sub eax, 0xd7e8b474
je 0x1000a6bf
jmp 0x10009769
mov eax, dword [ebp - 0xa4]
sub eax, 0xddf02662
je 0x10009cb9
jmp 0x1000977f
mov eax, dword [ebp - 0xa4]
sub eax, 0xea2d6d0b
je 0x1000a817
jmp 0x10009795
mov eax, dword [ebp - 0xa4]
sub eax, 0xeb26c81e
je 0x1000aabb
jmp 0x100097ab
mov eax, dword [ebp - 0xa4]
sub eax, 0xf1a87f71
je 0x1000a2d5
jmp 0x100097c1
mov eax, dword [ebp - 0xa4]
sub eax, 0xf3ff4ec0
je 0x10009af4
jmp 0x100097d7
mov eax, dword [ebp - 0xa4]
sub eax, 0xf4b9a043
je 0x10009fb8
jmp 0x100097ed
mov eax, dword [ebp - 0xa4]
sub eax, 0xf6aa881b
je 0x10009b23
jmp 0x10009803
mov eax, dword [ebp - 0xa4]
sub eax, 0xfc144986
je 0x1000aa04
jmp 0x10009819
mov eax, dword [ebp - 0xa4]
sub eax, 0xfc2d32d6
je 0x1000a839
jmp 0x1000982f
mov eax, dword [ebp - 0xa4]
sub eax, 0xa9da27c
je 0x1000a99b
jmp 0x10009845
mov eax, dword [ebp - 0xa4]
sub eax, 0xe4d7e03
je 0x1000a523
jmp 0x1000985b
mov eax, dword [ebp - 0xa4]
sub eax, 0xecfbd64
je 0x1000a33e
jmp 0x10009871
mov eax, dword [ebp - 0xa4]
sub eax, 0x17f1816c
je 0x1000a735
jmp 0x10009887
mov eax, dword [ebp - 0xa4]
sub eax, 0x2105ec5d
je 0x1000aaa9
jmp 0x1000989d
mov eax, dword [ebp - 0xa4]
sub eax, 0x2db48d3e
je 0x10009c85
jmp 0x100098b3
mov eax, dword [ebp - 0xa4]
sub eax, 0x323c5d05
je 0x10009e06
jmp 0x100098c9
mov eax, dword [ebp - 0xa4]
sub eax, 0x3623b502
je 0x1000a0e8
jmp 0x100098df
mov eax, dword [ebp - 0xa4]
sub eax, 0x393f1cb7
je 0x1000a08d
jmp 0x100098f5
mov eax, dword [ebp - 0xa4]
sub eax, 0x3a1319e7
je 0x1000ab3c
jmp 0x1000990b
mov eax, dword [ebp - 0xa4]
sub eax, 0x3d0e36e8
je 0x10009d27
jmp 0x10009921
mov eax, dword [ebp - 0xa4]
sub eax, 0x3e7a4758
je 0x1000a8aa
jmp 0x10009937
mov eax, dword [ebp - 0xa4]
sub eax, 0x4d76e849
je 0x1000a0a4
jmp 0x1000994d
mov eax, dword [ebp - 0xa4]
sub eax, 0x50e837d0
je 0x10009f6b
jmp 0x10009963
mov eax, dword [ebp - 0xa4]
sub eax, 0x52837224
je 0x1000a7af
jmp 0x10009979
mov eax, dword [ebp - 0xa4]
sub eax, 0x52b4b6ff
je 0x10009f5c
jmp 0x1000998f
mov eax, dword [ebp - 0xa4]
sub eax, 0x56a32031
je 0x1000a265
jmp 0x100099a5
mov eax, dword [ebp - 0xa4]
sub eax, 0x5703d57e
je 0x1000a808
jmp 0x100099bb
mov eax, dword [ebp - 0xa4]
sub eax, 0x59ffbede
je 0x1000a438
jmp 0x100099d1
mov eax, dword [ebp - 0xa4]
sub eax, 0x5b64a067
je 0x1000a4da
jmp 0x100099e7
mov eax, dword [ebp - 0xa4]
sub eax, 0x5d466ff2
je 0x1000a0c2
jmp 0x100099fd
mov eax, dword [ebp - 0xa4]
sub eax, 0x61fd9c0b
je 0x1000a2c6
jmp 0x10009a13
mov eax, dword [ebp - 0xa4]
sub eax, 0x625eec8e
je 0x1000a001
jmp 0x10009a29
mov eax, dword [ebp - 0xa4]
sub eax, 0x6731cb37
je 0x10009ba9
jmp 0x10009a3f
mov eax, dword [ebp - 0xa4]
sub eax, 0x68627ce5
je 0x1000a98c
jmp 0x10009a55
mov eax, dword [ebp - 0xa4]
sub eax, 0x6a9de603
je 0x1000a391
jmp 0x10009a6b
mov eax, dword [ebp - 0xa4]
sub eax, 0x71f7f9d4
je 0x1000a5df
jmp 0x10009a81
mov eax, dword [ebp - 0xa4]
sub eax, 0x73b22fdd
je 0x10009df7
jmp 0x10009a97
mov eax, dword [ebp - 0xa4]
sub eax, 0x7a1271a2
je 0x10009bea
jmp 0x10009aad
mov eax, dword [ebp - 0xa4]
sub eax, 0x7ca06771
je 0x1000a7be
mov al, byte [ebp - 0x96]
mov cl, byte [ebp - 0x95]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x68627ce5
mov ecx, 0xf6aa881b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
push eax
mov eax, esp
mov dword [ebp - 0x94], eax
push eax
mov eax, esp
mov dword [ebp - 0x90], eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x8c], eax
push eax
mov eax, esp
mov dword [ebp - 0x88], eax
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
mov edx, eax
sub edx, 0xdcc34206
sub edx, 1
add edx, 0xdcc34206
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, 0x68627ce5
mov ecx, 0xb13a3193
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0x6731cb37
jmp 0x1000ab68
push eax
mov eax, esp
mov dword [ebp - 0x84], eax
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x80], eax
push eax
mov eax, esp
mov dword [ebp - 0x7c], eax
push eax
mov eax, esp
mov dword [ebp - 0x78], eax
push eax
mov eax, esp
mov dword [ebp - 0x74], eax
push eax
mov eax, esp
mov dword [ebp - 0x70], eax
push eax
mov eax, esp
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x9c], 0x7a1271a2
jmp 0x1000ab68
mov ecx, dword [ebp - 0xa0]
push eax
mov eax, esp
mov dword [ebp - 0x68], eax
push eax
mov eax, esp
mov dword [ebp - 0x64], eax
push eax
mov eax, esp
mov dword [ebp - 0x60], eax
push eax
mov eax, esp
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.100276d0
add esp, 0xc
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0x88]
mov dword [eax], ecx
mov edx, dword [ebp - 0x88]
mov eax, 0x2db48d3e
mov ecx, 0x95068ffd
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0x8601dff3
jmp 0x1000ab68
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x9c], 0xddf02662
jmp 0x1000ab68
mov ecx, dword [0x1008dd84]
mov eax, dword [0x1008dd80]
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, 0xa9da27c
mov ecx, 0x3d0e36e8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
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 - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x88]
mov ecx, dword [ecx]
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 ecx, dword [0x1008dd84]
mov eax, dword [0x1008dd80]
mov edx, ecx
sub edx, 0x47686a61
sub edx, 1
add edx, 0x47686a61
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, 0xa9da27c
mov ecx, 0x73b22fdd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0x323c5d05
jmp 0x1000ab68
mov eax, dword [ebp - 0x80]
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 - 0x7c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x7c]
mov esi, 0xffffffff
mov eax, 0x50e837d0
mov ecx, 0xb114b3ab
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov ecx, dword [0x1008dd84]
mov eax, dword [0x1008dd80]
mov edx, ecx
sub edx, 0x7dcb2ea
sub edx, 1
add edx, 0x7dcb2ea
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, 0xfc144986
mov ecx, 0xc8bdabdc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov ecx, dword [0x1008dd84]
mov eax, dword [0x1008dd80]
mov edx, ecx
add edx, 0xc0b65816
sub edx, 1
sub edx, 0xc0b65816
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, 0xfc144986
mov ecx, 0x52b4b6ff
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0x8601dff3
jmp 0x1000ab68
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
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 dword [ebp - 0x50], eax
mov dword [ebp - 0x9c], 0xf4b9a043
jmp 0x1000ab68
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
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, 0xd198d756
mov ecx, 0x625eec8e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x50]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x49], al
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
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, 0xd198d756
mov ecx, 0x7cb32768
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dl, byte [ebp - 0x49]
mov eax, 0x393f1cb7
mov ecx, 0x9f9f3d05
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x9c], 0x4d76e849
jmp 0x1000ab68
mov eax, dword [ebp - 0x48]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x9c], 0x5d466ff2
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0x8601dff3
jmp 0x1000ab68
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x9c], 0x3623b502
jmp 0x1000ab68
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
mov edx, eax
add edx, 0x5649ff12
sub edx, 1
sub edx, 0x5649ff12
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, 0x9132b8b3
mov ecx, 0xaa83ee09
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov eax, dword [ebp - 0x44]
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 - 0x74]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x70]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0x3c]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x40], eax
mov ecx, dword [0x1008dd84]
mov eax, dword [0x1008dd80]
mov edx, ecx
sub edx, 0x41d454af
sub edx, 1
add edx, 0x41d454af
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, 0x9132b8b3
mov ecx, 0xc1508695
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0x9f1fa68f
jmp 0x1000ab68
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
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, 0xa606c21f
mov ecx, 0x56a32031
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x6c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov word [eax], 0
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
mov edx, eax
sub edx, 0x1ea864fd
sub edx, 1
add edx, 0x1ea864fd
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, 0xa606c21f
mov ecx, 0x61fd9c0b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0xf1a87f71
jmp 0x1000ab68
mov eax, dword [ebp - 0x68]
movzx eax, word [eax]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x9c], 0x80c78dbc
jmp 0x1000ab68
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
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, 0x2105ec5d
mov ecx, 0xecfbd64
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov eax, dword [ebp - 0x38]
movzx eax, word [eax + 6]
mov dword [ebp - 0x34], eax
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
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, 0x2105ec5d
mov ecx, 0x6a9de603
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0xc77e2d49
jmp 0x1000ab68
mov edx, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x34]
mov eax, 0xb305398b
mov ecx, 0x8d6d1ed2
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
sub eax, 0x192a2d2
add eax, 0x18
add eax, 0x192a2d2
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
add eax, 4
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x9c], 0xbd6b8ab7
jmp 0x1000ab68
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
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, 0xeb26c81e
mov ecx, 0x59ffbede
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov eax, dword [ebp - 0x2c]
movzx edx, word [eax + 0x10]
mov eax, dword [ebp - 0x30]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x68]
mov ax, word [eax]
mov word [ebp - 0x24], ax
mov ecx, dword [0x1008dd84]
mov eax, dword [0x1008dd80]
mov edx, ecx
add edx, 0x32821dfe
sub edx, 1
sub edx, 0x32821dfe
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, 0xeb26c81e
mov ecx, 0xbd794a45
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0x5b64a067
jmp 0x1000ab68
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
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, 0x888d99d1
mov ecx, 0xe4d7e03
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov ax, word [ebp - 0x24]
movzx eax, ax
imul eax, eax, 0x28
mov ecx, dword [ebp - 0x28]
sub ecx, 0xd5ca4b20
add ecx, eax
add ecx, 0xd5ca4b20
mov eax, dword [ebp - 0x64]
mov dword [eax], ecx
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10034940
call fcn.1002b030
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x21], al
mov ecx, dword [0x1008dd84]
mov eax, dword [0x1008dd80]
mov edx, ecx
sub edx, 0xe445c13d
sub edx, 1
add edx, 0xe445c13d
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, 0x888d99d1
mov ecx, 0x71f7f9d4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dl, byte [ebp - 0x21]
mov eax, 0xaa5a83af
mov ecx, 0x5703d57e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x84]
mov edx, dword [eax]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xf2e5d3df
add edx, eax
sub edx, 0xf2e5d3df
mov eax, dword [ebp - 0x60]
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 - 0x5c]
mov byte [eax], cl
mov eax, dword [ebp - 0x84]
mov edx, dword [eax]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xb34387be
add edx, eax
sub edx, 0xb34387be
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add ecx, 0x6f6d3a13
add ecx, eax
sub ecx, 0x6f6d3a13
mov eax, dword [ebp - 0x64]
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.10027830
add esp, 0xc
mov dword [ebp - 0x9c], 0xd7e8b474
jmp 0x1000ab68
mov ecx, dword [0x1008dd84]
mov eax, dword [0x1008dd80]
mov edx, ecx
sub edx, 0x5bfedc2
sub edx, 1
add edx, 0x5bfedc2
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, 0x8fc71cd8
mov ecx, 0x17f1816c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x14], eax
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
mov edx, eax
sub edx, 0x82334941
sub edx, 1
add edx, 0x82334941
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, 0x8fc71cd8
mov ecx, 0x52837224
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0x7ca06771
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0xea2d6d0b
jmp 0x1000ab68
mov eax, dword [ebp - 0x68]
mov ax, word [eax]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0xe], ax
mov dword [ebp - 0x9c], 0xfc2d32d6
jmp 0x1000ab68
mov eax, dword [ebp - 0x68]
mov cx, word [ebp - 0xe]
mov word [eax], cx
mov dword [ebp - 0x9c], 0xd0b16cb2
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0xf1a87f71
jmp 0x1000ab68
mov eax, dword [0x1008dd84]
mov ecx, dword [0x1008dd80]
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, 0x3a1319e7
mov ecx, 0x3e7a4758
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x1008dd84]
mov eax, dword [0x1008dd80]
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, 0x3a1319e7
mov ecx, 0xbaaba9fb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0x7e303d60
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0x8601dff3
jmp 0x1000ab68
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.10026930
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x9c], 0xf6aa881b
jmp 0x1000ab68
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
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 - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x88]
mov ecx, dword [ecx]
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 - 0x9c], 0x3d0e36e8
jmp 0x1000ab68
mov dword [ebp - 0x9c], 0xc8bdabdc
jmp 0x1000ab68
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x50]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x9c], 0x625eec8e
jmp 0x1000ab68
mov eax, dword [ebp - 0x44]
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 - 0x74]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x9c], 0xaa83ee09
jmp 0x1000ab68
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x6c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov word [eax], 0
mov dword [ebp - 0x9c], 0x56a32031
jmp 0x1000ab68
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x9c], 0xecfbd64
jmp 0x1000ab68
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x9c], 0x59ffbede
jmp 0x1000ab68
mov ax, word [ebp - 0x24]
movzx eax, ax
imul edx, eax, 0x28
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x64]
mov dword [eax], ecx
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10034940
call fcn.1002b030
add esp, 8
mov dword [ebp - 0x9c], 0xe4d7e03
jmp 0x1000ab68
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x64]
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x9c], 0x17f1816c
jmp 0x1000ab68
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x9c], 0x3e7a4758
jmp 0x10009527