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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x190
mov eax, dword [ebp + 8]
mov dword [ebp - 0x194], eax
mov eax, dword [0x10087080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x190], 0x1c5874e0
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x198], eax
sub eax, 0x819e2bf7
je 0x1000a701
jmp 0x10009ff4
mov eax, dword [ebp - 0x198]
sub eax, 0x86959018
je 0x1000b4ee
jmp 0x1000a00a
mov eax, dword [ebp - 0x198]
sub eax, 0x8e4900aa
je 0x1000b256
jmp 0x1000a020
mov eax, dword [ebp - 0x198]
sub eax, 0xa2a5b29f
je 0x1000aa2a
jmp 0x1000a036
mov eax, dword [ebp - 0x198]
sub eax, 0xa5a76d23
je 0x1000b27e
jmp 0x1000a04c
mov eax, dword [ebp - 0x198]
sub eax, 0xa9ca60e7
je 0x1000a854
jmp 0x1000a062
mov eax, dword [ebp - 0x198]
sub eax, 0xabf02a9f
je 0x1000b0d7
jmp 0x1000a078
mov eax, dword [ebp - 0x198]
sub eax, 0xb7250e74
je 0x1000aacf
jmp 0x1000a08e
mov eax, dword [ebp - 0x198]
sub eax, 0xb97dbef6
je 0x1000af7d
jmp 0x1000a0a4
mov eax, dword [ebp - 0x198]
sub eax, 0xbdb25c25
je 0x1000b06d
jmp 0x1000a0ba
mov eax, dword [ebp - 0x198]
sub eax, 0xbde828df
je 0x1000b247
jmp 0x1000a0d0
mov eax, dword [ebp - 0x198]
sub eax, 0xbe7bb2a2
je 0x1000b3c2
jmp 0x1000a0e6
mov eax, dword [ebp - 0x198]
sub eax, 0xc04e7a71
je 0x1000adab
jmp 0x1000a0fc
mov eax, dword [ebp - 0x198]
sub eax, 0xc0b58379
je 0x1000ab8a
jmp 0x1000a112
mov eax, dword [ebp - 0x198]
sub eax, 0xc4aac652
je 0x1000a722
jmp 0x1000a128
mov eax, dword [ebp - 0x198]
sub eax, 0xc71dfdf9
je 0x1000a5ed
jmp 0x1000a13e
mov eax, dword [ebp - 0x198]
sub eax, 0xc737e13c
je 0x1000b2f5
jmp 0x1000a154
mov eax, dword [ebp - 0x198]
sub eax, 0xc90a3339
je 0x1000aade
jmp 0x1000a16a
mov eax, dword [ebp - 0x198]
sub eax, 0xcd36628b
je 0x1000b352
jmp 0x1000a180
mov eax, dword [ebp - 0x198]
sub eax, 0xd1eaacb6
je 0x1000a7cf
jmp 0x1000a196
mov eax, dword [ebp - 0x198]
sub eax, 0xd22799f1
je 0x1000b567
jmp 0x1000a1ac
mov eax, dword [ebp - 0x198]
sub eax, 0xd9caf513
je 0x1000a731
jmp 0x1000a1c2
mov eax, dword [ebp - 0x198]
sub eax, 0xddb496c0
je 0x1000acca
jmp 0x1000a1d8
mov eax, dword [ebp - 0x198]
sub eax, 0xe49f8c46
je 0x1000b4fd
jmp 0x1000a1ee
mov eax, dword [ebp - 0x198]
sub eax, 0xe7bad4a0
je 0x1000a77a
jmp 0x1000a204
mov eax, dword [ebp - 0x198]
sub eax, 0xe8c26b31
je 0x1000aee1
jmp 0x1000a21a
mov eax, dword [ebp - 0x198]
sub eax, 0xf5eb8793
je 0x1000b427
jmp 0x1000a230
mov eax, dword [ebp - 0x198]
sub eax, 0xf617d6bc
je 0x1000ad9c
jmp 0x1000a246
mov eax, dword [ebp - 0x198]
sub eax, 0xf6551f51
je 0x1000abe5
jmp 0x1000a25c
mov eax, dword [ebp - 0x198]
sub eax, 0xfccf79a5
je 0x1000a9d9
jmp 0x1000a272
mov eax, dword [ebp - 0x198]
sub eax, 0xfd22677f
je 0x1000b29d
jmp 0x1000a288
mov eax, dword [ebp - 0x198]
sub eax, 0xfe863875
je 0x1000a90a
jmp 0x1000a29e
mov eax, dword [ebp - 0x198]
sub eax, 0x43bf8d6
je 0x1000b191
jmp 0x1000a2b4
mov eax, dword [ebp - 0x198]
sub eax, 0x684790a
je 0x1000b54c
jmp 0x1000a2ca
mov eax, dword [ebp - 0x198]
sub eax, 0x7d66b12
je 0x1000adc8
jmp 0x1000a2e0
mov eax, dword [ebp - 0x198]
sub eax, 0x846e0ce
je 0x1000b4cd
jmp 0x1000a2f6
mov eax, dword [ebp - 0x198]
sub eax, 0x9521ec3
je 0x1000ad13
jmp 0x1000a30c
mov eax, dword [ebp - 0x198]
sub eax, 0xaf55c1e
je 0x1000b37e
jmp 0x1000a322
mov eax, dword [ebp - 0x198]
sub eax, 0x141353c6
je 0x1000ab1c
jmp 0x1000a338
mov eax, dword [ebp - 0x198]
sub eax, 0x15fcd6da
je 0x1000ae49
jmp 0x1000a34e
mov eax, dword [ebp - 0x198]
sub eax, 0x160bafa9
je 0x1000ae27
jmp 0x1000a364
mov eax, dword [ebp - 0x198]
sub eax, 0x193c763e
je 0x1000ae09
jmp 0x1000a37a
mov eax, dword [ebp - 0x198]
sub eax, 0x1c5874e0
je 0x1000a54d
jmp 0x1000a390
mov eax, dword [ebp - 0x198]
sub eax, 0x1f5a0cb5
je 0x1000b0b6
jmp 0x1000a3a6
mov eax, dword [ebp - 0x198]
sub eax, 0x246669f3
je 0x1000a577
jmp 0x1000a3bc
mov eax, dword [ebp - 0x198]
sub eax, 0x25c0d7c7
je 0x1000ac6a
jmp 0x1000a3d2
mov eax, dword [ebp - 0x198]
sub eax, 0x272cd325
je 0x1000b576
jmp 0x1000a3e8
mov eax, dword [ebp - 0x198]
sub eax, 0x2a7f7354
je 0x1000b436
jmp 0x1000a3fe
mov eax, dword [ebp - 0x198]
sub eax, 0x2acecbc3
je 0x1000b0f2
jmp 0x1000a414
mov eax, dword [ebp - 0x198]
sub eax, 0x2c836d6c
je 0x1000a8fb
jmp 0x1000a42a
mov eax, dword [ebp - 0x198]
sub eax, 0x35aaa51d
je 0x1000aaff
jmp 0x1000a440
mov eax, dword [ebp - 0x198]
sub eax, 0x4486de9a
je 0x1000a7de
jmp 0x1000a456
mov eax, dword [ebp - 0x198]
sub eax, 0x4495f995
je 0x1000b2ac
jmp 0x1000a46c
mov eax, dword [ebp - 0x198]
sub eax, 0x50395919
je 0x1000b3b1
jmp 0x1000a482
mov eax, dword [ebp - 0x198]
sub eax, 0x54d39261
je 0x1000abf4
jmp 0x1000a498
mov eax, dword [ebp - 0x198]
sub eax, 0x5c8871cd
je 0x1000afff
jmp 0x1000a4ae
mov eax, dword [ebp - 0x198]
sub eax, 0x62656baf
je 0x1000b361
jmp 0x1000a4c4
mov eax, dword [ebp - 0x198]
sub eax, 0x636ec171
je 0x1000ae73
jmp 0x1000a4da
mov eax, dword [ebp - 0x198]
sub eax, 0x63b2f1d2
je 0x1000af8c
jmp 0x1000a4f0
mov eax, dword [ebp - 0x198]
sub eax, 0x6a7d3f6a
je 0x1000a9ad
jmp 0x1000a506
mov eax, dword [ebp - 0x198]
sub eax, 0x6b84b7d3
je 0x1000a9bc
jmp 0x1000a51c
mov eax, dword [ebp - 0x198]
sub eax, 0x72bea356
je 0x1000acbb
jmp 0x1000a532
mov eax, dword [ebp - 0x198]
sub eax, 0x76657724
je 0x1000b472
jmp 0x1000a548
jmp 0x1000b594
push eax
mov eax, esp
mov dword [ebp - 0x17c], eax
push eax
mov eax, esp
mov dword [ebp - 0x178], eax
push eax
mov eax, esp
mov dword [ebp - 0x174], eax
mov dword [ebp - 0x190], 0x246669f3
jmp 0x1000b594
mov ecx, dword [0x1008855c]
mov eax, dword [0x10088558]
mov edx, ecx
sub edx, 0x9e6700f0
sub edx, 1
add edx, 0x9e6700f0
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, 0xbe7bb2a2
mov ecx, 0xc71dfdf9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [ebp - 0x194]
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
push eax
mov ecx, esp
mov dword [ebp - 0x164], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x160], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x15c], ecx
mov dword [ebp - 0x180], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x184], 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.10019e10
add esp, 0xc
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x188], eax
cmp dword [ebp - 0x188], 0
setne al
and al, 1
mov byte [ebp - 0x155], al
mov ecx, dword [0x1008855c]
mov eax, dword [0x10088558]
mov edx, ecx
add edx, 0x7773165f
sub edx, 1
sub edx, 0x7773165f
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, 0xbe7bb2a2
mov ecx, 0x819e2bf7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dl, byte [ebp - 0x155]
mov eax, 0xc4aac652
mov ecx, 0xd9caf513
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dword [ebp - 0x190], 0x50395919
jmp 0x1000b594
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
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, 0xf5eb8793
mov ecx, 0xe7bad4a0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x154], eax
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
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, 0xf5eb8793
mov ecx, 0xd1eaacb6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dword [ebp - 0x190], 0x4486de9a
jmp 0x1000b594
mov ecx, dword [0x1008855c]
mov eax, dword [0x10088558]
mov edx, ecx
sub edx, 0x6a3ebbab
sub edx, 1
add edx, 0x6a3ebbab
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, 0x2a7f7354
mov ecx, 0xa9ca60e7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov edx, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x154]
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 - 0x150], eax
mov ecx, dword [0x1008855c]
mov eax, dword [0x10088558]
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, 0x2a7f7354
mov ecx, 0x2c836d6c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dword [ebp - 0x190], 0xfe863875
jmp 0x1000b594
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x18c], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x188]
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]
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 - 0x17c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x17c]
mov esi, 0xffffffff
mov eax, 0x6b84b7d3
mov ecx, 0x6a7d3f6a
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dword [ebp - 0x190], 0x50395919
jmp 0x1000b594
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x190], 0xfccf79a5
jmp 0x1000b594
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
mov edx, eax
sub edx, 0x87697f65
sub edx, 1
add edx, 0x87697f65
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, 0x76657724
mov ecx, 0xa2a5b29f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [ebp - 0x14c]
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 - 0x178]
mov dword [eax], ecx
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov dword [ebp - 0x148], eax
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
mov edx, eax
sub edx, 0xfc7b01e
sub edx, 1
add edx, 0xfc7b01e
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, 0x76657724
mov ecx, 0xb7250e74
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dword [ebp - 0x190], 0xc90a3339
jmp 0x1000b594
mov edx, dword [ebp - 0x148]
mov eax, 0x35aaa51d
mov ecx, 0xddb496c0
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x190], 0x141353c6
jmp 0x1000b594
mov ecx, dword [0x1008855c]
mov eax, dword [0x10088558]
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, 0x846e0ce
mov ecx, 0xc0b58379
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [ebp - 0x144]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
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, 0x846e0ce
mov ecx, 0xf6551f51
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dword [ebp - 0x190], 0x54d39261
jmp 0x1000b594
mov ecx, dword [0x1008855c]
mov eax, dword [0x10088558]
mov edx, ecx
add edx, 0x7cc6e1ad
sub edx, 1
sub edx, 0x7cc6e1ad
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, 0x86959018
mov ecx, 0x25c0d7c7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
mov edx, eax
sub edx, 0x33139456
sub edx, 1
add edx, 0x33139456
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, 0x86959018
mov ecx, 0x72bea356
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dword [ebp - 0x190], 0x50395919
jmp 0x1000b594
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
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, 0xe49f8c46
mov ecx, 0x9521ec3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [ebp - 0x178]
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 - 0x174]
mov dword [eax], ecx
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
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, 0xe49f8c46
mov ecx, 0xf617d6bc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dword [ebp - 0x190], 0xc04e7a71
jmp 0x1000b594
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x170]
mov dword [eax], ecx
mov dword [ebp - 0x190], 0x7d66b12
jmp 0x1000b594
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
add ecx, 0x1e36b846
add ecx, eax
sub ecx, 0x1e36b846
mov eax, dword [ebp - 0x16c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x168]
mov word [eax], 0
mov dword [ebp - 0x190], 0x193c763e
jmp 0x1000b594
mov eax, dword [ebp - 0x168]
movzx eax, word [eax]
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x190], 0x160bafa9
jmp 0x1000b594
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov ax, word [eax + 6]
mov word [ebp - 0x13a], ax
mov dword [ebp - 0x190], 0x15fcd6da
jmp 0x1000b594
mov ax, word [ebp - 0x13a]
movzx esi, ax
mov edx, dword [ebp - 0x140]
mov eax, 0x4495f995
mov ecx, 0x636ec171
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov ecx, dword [0x1008855c]
mov eax, dword [0x10088558]
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, 0x684790a
mov ecx, 0xe8c26b31
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [ebp - 0x16c]
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 dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
add eax, 4
mov dword [ebp - 0x134], eax
mov ecx, dword [0x1008855c]
mov eax, dword [0x10088558]
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, 0x684790a
mov ecx, 0xb97dbef6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dword [ebp - 0x190], 0x63b2f1d2
jmp 0x1000b594
mov eax, dword [ebp - 0x134]
movzx edx, word [eax + 0x10]
mov ecx, dword [ebp - 0x138]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x168]
movzx eax, word [eax]
imul edx, eax, 0x28
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x164]
mov dword [eax], ecx
mov eax, dword [ebp - 0x164]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10027cfd
call fcn.1001d770
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x12d], al
mov dword [ebp - 0x190], 0x5c8871cd
jmp 0x1000b594
mov ecx, dword [0x1008855c]
mov eax, dword [0x10088558]
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, 0xd22799f1
mov ecx, 0xbdb25c25
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
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, 0xd22799f1
mov ecx, 0x1f5a0cb5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dl, byte [ebp - 0x12d]
mov eax, 0xabf02a9f
mov ecx, 0xbde828df
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [ebp - 0x160]
mov dword [eax], 0
mov dword [ebp - 0x190], 0x2acecbc3
jmp 0x1000b594
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, edx
xor edx, edx
sub edx, esi
add eax, edx
xor edx, edx
sub edx, eax
mov eax, dword [ebp - 0x160]
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 - 0x15c]
mov byte [eax], cl
mov eax, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x164]
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 - 0x12c], eax
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x190], 0x43bf8d6
jmp 0x1000b594
mov ecx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add ecx, 0x3af1892
add ecx, eax
sub ecx, 0x3af1892
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x12c]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10019f70
add esp, 0xc
mov eax, dword [ebp - 0x160]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add esi, 0xfdff0a06
add esi, eax
sub esi, 0xfdff0a06
mov eax, dword [ebp - 0x160]
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 - 0x15c]
mov byte [eax], cl
mov dword [ebp - 0x190], 0xbde828df
jmp 0x1000b594
mov dword [ebp - 0x190], 0x8e4900aa
jmp 0x1000b594
mov eax, dword [ebp - 0x168]
mov ax, word [eax]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x122], ax
mov dword [ebp - 0x190], 0xa5a76d23
jmp 0x1000b594
mov eax, dword [ebp - 0x168]
mov cx, word [ebp - 0x122]
mov word [eax], cx
mov dword [ebp - 0x190], 0xfd22677f
jmp 0x1000b594
mov dword [ebp - 0x190], 0x193c763e
jmp 0x1000b594
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
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, 0x272cd325
mov ecx, 0xc737e13c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1008855c]
mov ecx, dword [0x10088558]
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, 0x272cd325
mov ecx, 0xcd36628b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000b594
mov dword [ebp - 0x190], 0x62656baf
jmp 0x1000b594
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x190], 0xaf55c1e
jmp 0x1000b594
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x184]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x190], 0x50395919
jmp 0x1000b594
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.10019070
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x180], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x184], 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.10019e10
add esp, 0xc
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x190], 0xc71dfdf9
jmp 0x1000b594
mov dword [ebp - 0x190], 0xe7bad4a0
jmp 0x1000b594
mov edx, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x154]
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 dword [ebp - 0x190], 0xa9ca60e7
jmp 0x1000b594
mov eax, dword [ebp - 0x14c]
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 - 0x178]
mov dword [eax], ecx
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x190], 0xa2a5b29f
jmp 0x1000b594
mov eax, dword [ebp - 0x144]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x190], 0xc0b58379
jmp 0x1000b594
mov dword [ebp - 0x190], 0x25c0d7c7
jmp 0x1000b594
mov eax, dword [ebp - 0x178]
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 - 0x174]
mov dword [eax], ecx
mov dword [ebp - 0x190], 0x9521ec3
jmp 0x1000b594
mov eax, dword [ebp - 0x16c]
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0x190], 0xe8c26b31
jmp 0x1000b594
mov dword [ebp - 0x190], 0xbdb25c25
jmp 0x1000b594
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x190], 0xc737e13c
jmp 0x10009fd8