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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xa4
mov eax, dword [ebp + 8]
mov dword [ebp - 0xac], eax
mov eax, dword [0x1007d280]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
mov edx, ecx
sub edx, 0x42bd21ce
sub edx, 1
add edx, 0x42bd21ce
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0xa2], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0xa1], al
mov dword [ebp - 0xa8], 0x1c14b567
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xb0], eax
sub eax, 0x817ed5a1
je 0x10009d52
jmp 0x10008ba4
mov eax, dword [ebp - 0xb0]
sub eax, 0x81a48ffa
je 0x10009b72
jmp 0x10008bba
mov eax, dword [ebp - 0xb0]
sub eax, 0x8604a4b2
je 0x10009f5f
jmp 0x10008bd0
mov eax, dword [ebp - 0xb0]
sub eax, 0x878ed0e3
je 0x1000a498
jmp 0x10008be6
mov eax, dword [ebp - 0xb0]
sub eax, 0x9243fdbb
je 0x10009cdd
jmp 0x10008bfc
mov eax, dword [ebp - 0xb0]
sub eax, 0x938f792d
je 0x10009501
jmp 0x10008c12
mov eax, dword [ebp - 0xb0]
sub eax, 0x939784d9
je 0x1000a4b9
jmp 0x10008c28
mov eax, dword [ebp - 0xb0]
sub eax, 0x9c9b9ecf
je 0x1000a5d7
jmp 0x10008c3e
mov eax, dword [ebp - 0xb0]
sub eax, 0x9cadcd97
je 0x1000a0df
jmp 0x10008c54
mov eax, dword [ebp - 0xb0]
sub eax, 0x9d6d63fc
je 0x10009b29
jmp 0x10008c6a
mov eax, dword [ebp - 0xb0]
sub eax, 0xa257e5f4
je 0x1000a4c8
jmp 0x10008c80
mov eax, dword [ebp - 0xb0]
sub eax, 0xb100dd3f
je 0x1000a508
jmp 0x10008c96
mov eax, dword [ebp - 0xb0]
sub eax, 0xb39628bc
je 0x10009701
jmp 0x10008cac
mov eax, dword [ebp - 0xb0]
sub eax, 0xbd8ae57e
je 0x1000999c
jmp 0x10008cc2
mov eax, dword [ebp - 0xb0]
sub eax, 0xc0b632ce
je 0x1000a053
jmp 0x10008cd8
mov eax, dword [ebp - 0xb0]
sub eax, 0xc12dddbd
je 0x1000a5b0
jmp 0x10008cee
mov eax, dword [ebp - 0xb0]
sub eax, 0xc23a68ab
je 0x10009312
jmp 0x10008d04
mov eax, dword [ebp - 0xb0]
sub eax, 0xc9f460d0
je 0x1000a2d5
jmp 0x10008d1a
mov eax, dword [ebp - 0xb0]
sub eax, 0xd3562fa1
je 0x1000a15f
jmp 0x10008d30
mov eax, dword [ebp - 0xb0]
sub eax, 0xd375227b
je 0x1000a57a
jmp 0x10008d46
mov eax, dword [ebp - 0xb0]
sub eax, 0xd37a40f4
je 0x10009a2d
jmp 0x10008d5c
mov eax, dword [ebp - 0xb0]
sub eax, 0xdb61cf5c
je 0x1000a47a
jmp 0x10008d72
mov eax, dword [ebp - 0xb0]
sub eax, 0xdc51e510
je 0x1000a696
jmp 0x10008d88
mov eax, dword [ebp - 0xb0]
sub eax, 0xdc8cded4
je 0x100097f9
jmp 0x10008d9e
mov eax, dword [ebp - 0xb0]
sub eax, 0xdd734197
je 0x1000a3db
jmp 0x10008db4
mov eax, dword [ebp - 0xb0]
sub eax, 0xdf3471e9
je 0x1000a5c5
jmp 0x10008dca
mov eax, dword [ebp - 0xb0]
sub eax, 0xe0c708d3
je 0x1000991e
jmp 0x10008de0
mov eax, dword [ebp - 0xb0]
sub eax, 0xe90ae456
je 0x100093ff
jmp 0x10008df6
mov eax, dword [ebp - 0xb0]
sub eax, 0xef109576
je 0x1000a16e
jmp 0x10008e0c
mov eax, dword [ebp - 0xb0]
sub eax, 0xf0247a9c
je 0x1000a6bf
jmp 0x10008e22
mov eax, dword [ebp - 0xb0]
sub eax, 0xf2cacf8f
je 0x100098c7
jmp 0x10008e38
mov eax, dword [ebp - 0xb0]
sub eax, 0xf788a0b7
je 0x10009df1
jmp 0x10008e4e
mov eax, dword [ebp - 0xb0]
sub eax, 0x2139f98
je 0x1000a6ad
jmp 0x10008e64
mov eax, dword [ebp - 0xb0]
sub eax, 0x3c7b55c
je 0x100098b8
jmp 0x10008e7a
mov eax, dword [ebp - 0xb0]
sub eax, 0x52f6118
je 0x1000a56b
jmp 0x10008e90
mov eax, dword [ebp - 0xb0]
sub eax, 0x598bc74
je 0x1000971f
jmp 0x10008ea6
mov eax, dword [ebp - 0xb0]
sub eax, 0x5f8f402
je 0x1000a5ff
jmp 0x10008ebc
mov eax, dword [ebp - 0xb0]
sub eax, 0x5fe49ee
je 0x10009a8d
jmp 0x10008ed2
mov eax, dword [ebp - 0xb0]
sub eax, 0x10f3daf1
je 0x10009bf2
jmp 0x10008ee8
mov eax, dword [ebp - 0xb0]
sub eax, 0x13e52527
je 0x10009303
jmp 0x10008efe
mov eax, dword [ebp - 0xb0]
sub eax, 0x14f5cf60
je 0x10009a3c
jmp 0x10008f14
mov eax, dword [ebp - 0xb0]
sub eax, 0x15153283
je 0x1000a071
jmp 0x10008f2a
mov eax, dword [ebp - 0xb0]
sub eax, 0x168b13e5
je 0x1000a6ea
jmp 0x10008f40
mov eax, dword [ebp - 0xb0]
sub eax, 0x1c14b567
je 0x1000925d
jmp 0x10008f56
mov eax, dword [ebp - 0xb0]
sub eax, 0x1c8b51c6
je 0x10009d70
jmp 0x10008f6c
mov eax, dword [ebp - 0xb0]
sub eax, 0x1ff9cd1d
je 0x100095b7
jmp 0x10008f82
mov eax, dword [ebp - 0xb0]
sub eax, 0x20b04244
je 0x1000a35c
jmp 0x10008f98
mov eax, dword [ebp - 0xb0]
sub eax, 0x22880be7
je 0x1000a703
jmp 0x10008fae
mov eax, dword [ebp - 0xb0]
sub eax, 0x22c1860f
je 0x1000928c
jmp 0x10008fc4
mov eax, dword [ebp - 0xb0]
sub eax, 0x2b200607
je 0x100094b0
jmp 0x10008fda
mov eax, dword [ebp - 0xb0]
sub eax, 0x2db5562d
je 0x10009c01
jmp 0x10008ff0
mov eax, dword [ebp - 0xb0]
sub eax, 0x2edb198b
je 0x1000984a
jmp 0x10009006
mov eax, dword [ebp - 0xb0]
sub eax, 0x2f6898a9
je 0x100094a1
jmp 0x1000901c
mov eax, dword [ebp - 0xb0]
sub eax, 0x30b19b3e
je 0x100093e1
jmp 0x10009032
mov eax, dword [ebp - 0xb0]
sub eax, 0x346e1284
je 0x10009c25
jmp 0x10009048
mov eax, dword [ebp - 0xb0]
sub eax, 0x35212ca9
je 0x1000a38a
jmp 0x1000905e
mov eax, dword [ebp - 0xb0]
sub eax, 0x39e59165
je 0x1000a4aa
jmp 0x10009074
mov eax, dword [ebp - 0xb0]
sub eax, 0x3c0f01ac
je 0x10009fd5
jmp 0x1000908a
mov eax, dword [ebp - 0xb0]
sub eax, 0x3d127d28
je 0x1000a250
jmp 0x100090a0
mov eax, dword [ebp - 0xb0]
sub eax, 0x41b37ad8
je 0x10009c94
jmp 0x100090b6
mov eax, dword [ebp - 0xb0]
sub eax, 0x433b5468
je 0x10009450
jmp 0x100090cc
mov eax, dword [ebp - 0xb0]
sub eax, 0x443a0ed7
je 0x1000977e
jmp 0x100090e2
mov eax, dword [ebp - 0xb0]
sub eax, 0x4b7693b5
je 0x10009e42
jmp 0x100090f8
mov eax, dword [ebp - 0xb0]
sub eax, 0x4d6721f0
je 0x1000a062
jmp 0x1000910e
mov eax, dword [ebp - 0xb0]
sub eax, 0x4e285ae2
je 0x1000972e
mov al, byte [ebp - 0xa2]
mov cl, byte [ebp - 0xa1]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x39e59165
mov ecx, 0x22c1860f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
push eax
mov eax, esp
mov dword [ebp - 0xa0], eax
push eax
mov eax, esp
mov dword [ebp - 0x9c], eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x98], eax
push eax
mov eax, esp
mov dword [ebp - 0x94], eax
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
mov edx, eax
sub edx, 0x99611257
sub edx, 1
add edx, 0x99611257
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, 0x39e59165
mov ecx, 0x13e52527
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov dword [ebp - 0xa8], 0xc23a68ab
jmp 0x1000a722
mov ecx, dword [ebp - 0xac]
push eax
mov eax, esp
mov dword [ebp - 0x90], eax
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x8c], eax
push eax
mov eax, esp
mov dword [ebp - 0x88], eax
push eax
mov eax, esp
mov dword [ebp - 0x84], eax
push eax
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
push eax
mov eax, esp
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0xa0]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x9c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x98]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1001dde0
add esp, 0xc
mov eax, dword [ebp - 0xa0]
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 - 0x94]
mov dword [eax], ecx
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0xa8], 0x30b19b3e
jmp 0x1000a722
mov edx, dword [ebp - 0x64]
mov eax, 0xe90ae456
mov ecx, 0x2b200607
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
mov edx, eax
sub edx, 0xbc37e44a
sub edx, 1
add edx, 0xbc37e44a
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, 0x939784d9
mov ecx, 0x433b5468
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
mov edx, eax
add edx, 0x8e70a87
sub edx, 1
sub edx, 0x8e70a87
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, 0x939784d9
mov ecx, 0x2f6898a9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov dword [ebp - 0xa8], 0x878ed0e3
jmp 0x1000a722
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
mov edx, eax
sub edx, 0xe236d72d
sub edx, 1
add edx, 0xe236d72d
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, 0xa257e5f4
mov ecx, 0x938f792d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x9c]
mov edx, dword [eax]
mov eax, dword [ebp - 0x98]
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 ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
mov edx, ecx
sub edx, 0xb4a2923d
sub edx, 1
add edx, 0xb4a2923d
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, 0xa257e5f4
mov ecx, 0x66b64f36
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x98]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x94]
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 - 0xa8], 0x7ae7a441
jmp 0x1000a722
mov dl, byte [ebp - 0x5d]
mov eax, 0x4e285ae2
mov ecx, 0x598bc74
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov dword [ebp - 0xa8], 0x878ed0e3
jmp 0x1000a722
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x5c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0xa8], 0x691ed446
jmp 0x1000a722
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
mov edx, eax
add edx, 0x8c583278
sub edx, 1
sub edx, 0x8c583278
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, 0x52f6118
mov ecx, 0x2edb198b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
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, 0x52f6118
mov ecx, 0x3c7b55c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov dword [ebp - 0xa8], 0x878ed0e3
jmp 0x1000a722
mov eax, dword [ebp - 0x84]
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 - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0xa8], 0xe0c708d3
jmp 0x1000a722
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x50]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
add eax, 0x3c
mov dword [ebp - 0x48], eax
mov dword [ebp - 0xa8], 0x75128b39
jmp 0x1000a722
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x4c]
sub ecx, 0x701562e2
add ecx, eax
add ecx, 0x701562e2
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov word [eax], 0
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
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, 0xd375227b
mov ecx, 0xd37a40f4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov dword [ebp - 0xa8], 0x14f5cf60
jmp 0x1000a722
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
mov edx, eax
add edx, 0xb578ade
sub edx, 1
sub edx, 0xb578ade
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, 0xc12dddbd
mov ecx, 0x5fe49ee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x74]
movzx eax, word [eax]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x40], eax
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
mov edx, ecx
sub edx, 0x878ed0d8
sub edx, 1
add edx, 0x878ed0d8
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, 0xc12dddbd
mov ecx, 0x5c2b8c0b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
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, 0xdf3471e9
mov ecx, 0x81a48ffa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x40]
mov ax, word [eax]
mov word [ebp - 0x3a], ax
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
mov edx, ecx
add edx, 0xfa51801c
sub edx, 1
sub edx, 0xfa51801c
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, 0xdf3471e9
mov ecx, 0x10f3daf1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov dword [ebp - 0xa8], 0x2db5562d
jmp 0x1000a722
mov ax, word [ebp - 0x3a]
movzx esi, ax
mov edx, dword [ebp - 0x44]
mov eax, 0x20b04244
mov ecx, 0x346e1284
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov ecx, dword [ebp - 0x78]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
add eax, 0x93fdfefc
add eax, ecx
sub eax, 0x93fdfefc
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x74]
movzx eax, word [eax]
imul eax, eax, 0x28
mov dword [ebp - 0x34], eax
mov dword [ebp - 0xa8], 0x63d29ae1
jmp 0x1000a722
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
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, 0x9c9b9ecf
mov ecx, 0x9243fdbb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov ecx, dword [ebp - 0x30]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1002b74f
call fcn.10021740
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x29], al
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
mov edx, eax
add edx, 0x8d9c7c69
sub edx, 1
sub edx, 0x8d9c7c69
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, 0x9c9b9ecf
mov ecx, 0x817ed5a1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov dl, byte [ebp - 0x29]
mov eax, 0x1c8b51c6
mov ecx, 0x4d6721f0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x6c]
mov dword [eax], 0
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x90]
mov edx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0x62b0e5df
add edx, eax
add edx, 0x62b0e5df
mov eax, dword [ebp - 0x6c]
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 - 0x68]
mov byte [eax], cl
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
add eax, 0xc
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xa8], 0xf788a0b7
jmp 0x1000a722
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
mov edx, eax
sub edx, 0x1d08b7c3
sub edx, 1
add edx, 0x1d08b7c3
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, 0x5f8f402
mov ecx, 0x4b7693b5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov edx, dword [ebp - 0x28]
add edx, 0xde11c617
add edx, eax
sub edx, 0xde11c617
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub ecx, eax
mov eax, dword [ebp - 0x70]
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.1001df40
add esp, 0xc
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x90]
mov esi, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub esi, 0x8865e2c0
add esi, eax
add esi, 0x8865e2c0
mov eax, dword [ebp - 0x6c]
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 al
and al, 1
mov byte [ebp - 0x1d], al
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
mov edx, ecx
sub edx, 0x15ba1e8c
sub edx, 1
add edx, 0x15ba1e8c
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, 0x5f8f402
mov ecx, 0x7566af07
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
mov edx, ecx
add edx, 0x2a7fce5f
sub edx, 1
sub edx, 0x2a7fce5f
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, 0xdc51e510
mov ecx, 0x3c0f01ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x68]
mov cl, byte [ebp - 0x1d]
mov byte [eax], cl
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
mov edx, ecx
add edx, 0x9a449d17
sub edx, 1
sub edx, 0x9a449d17
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, 0xdc51e510
mov ecx, 0xc0b632ce
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov dword [ebp - 0xa8], 0x4d6721f0
jmp 0x1000a722
mov dword [ebp - 0xa8], 0x15153283
jmp 0x1000a722
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
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, 0x2139f98
mov ecx, 0x9cadcd97
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x74]
mov ax, word [eax]
mov word [ebp - 0x1c], ax
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
mov edx, ecx
add edx, 0x8eed8e09
sub edx, 1
sub edx, 0x8eed8e09
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, 0x2139f98
mov ecx, 0xd3562fa1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov dword [ebp - 0xa8], 0xef109576
jmp 0x1000a722
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
mov edx, ecx
add edx, 0x4ef4203c
sub edx, 1
sub edx, 0x4ef4203c
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, 0xf0247a9c
mov ecx, 0x7b54cc08
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov dword [ebp - 0xa8], 0x533d4ab9
jmp 0x1000a722
mov eax, dword [ebp - 0x74]
mov cx, word [ebp - 0x1a]
mov word [eax], cx
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
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, 0x168b13e5
mov ecx, 0x793ad79f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0xa8], 0x35212ca9
jmp 0x1000a722
mov eax, dword [0x1007e76c]
mov ecx, dword [0x1007e768]
mov edx, eax
add edx, 0x666e40e3
sub edx, 1
sub edx, 0x666e40e3
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, 0x22880be7
mov ecx, 0xdd734197
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov ecx, dword [0x1007e76c]
mov eax, dword [0x1007e768]
mov edx, ecx
sub edx, 0x811013e7
sub edx, 1
add edx, 0x811013e7
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, 0x22880be7
mov ecx, 0x629792fb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x1000a722
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0x878ed0e3
jmp 0x1000a722
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1001d040
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0xa8], 0x22c1860f
jmp 0x1000a722
mov dword [ebp - 0xa8], 0x433b5468
jmp 0x1000a722
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x9c]
mov edx, dword [eax]
mov eax, dword [ebp - 0x98]
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 dword [ebp - 0xa8], 0x938f792d
jmp 0x1000a722
mov eax, dword [ebp - 0x8c]
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 - 0x88]
mov dword [eax], ecx
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0xa8], 0x75d0e544
jmp 0x1000a722
mov dword [ebp - 0xa8], 0x2edb198b
jmp 0x1000a722
mov eax, dword [ebp - 0x48]
mov edx, dword [eax]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x4c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov word [eax], 0
mov dword [ebp - 0xa8], 0xbd8ae57e
jmp 0x1000a722
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xa8], 0x5fe49ee
jmp 0x1000a722
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xa8], 0x81a48ffa
jmp 0x1000a722
mov ecx, dword [ebp - 0x30]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1002b74f
call fcn.10021740
add esp, 8
mov dword [ebp - 0xa8], 0x9243fdbb
jmp 0x1000a722
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x28]
add edx, 0x93e7c845
add edx, eax
sub edx, 0x93e7c845
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub ecx, eax
mov eax, dword [ebp - 0x70]
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.1001df40
add esp, 0xc
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x90]
mov esi, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x6c]
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]
mov dword [ebp - 0xa8], 0x4b7693b5
jmp 0x1000a722
mov eax, dword [ebp - 0x68]
mov cl, byte [ebp - 0x1d]
mov byte [eax], cl
mov dword [ebp - 0xa8], 0x3c0f01ac
jmp 0x1000a722
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xa8], 0x9cadcd97
jmp 0x1000a722
mov ax, word [ebp - 0x1c]
mov ax, word [ebp - 0x1c]
mov ax, word [ebp - 0x1c]
mov ax, word [ebp - 0x1c]
mov ax, word [ebp - 0x1c]
mov ax, word [ebp - 0x1c]
mov ax, word [ebp - 0x1c]
mov dword [ebp - 0xa8], 0x7b54cc08
jmp 0x1000a722
mov eax, dword [ebp - 0x74]
mov cx, word [ebp - 0x1a]
mov word [eax], cx
mov dword [ebp - 0xa8], 0xc9f460d0
jmp 0x1000a722
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xa8], 0xdd734197
jmp 0x10008b88