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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x198
mov eax, dword [ebp + 8]
mov dword [ebp - 0x19c], eax
mov eax, dword [0x1008b400]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x198], 0x558e3000
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x1a0], eax
sub eax, 0x80a10027
je 0x10001961
jmp 0x100010e4
mov eax, dword [ebp - 0x1a0]
sub eax, 0x81064bc1
je 0x100022d6
jmp 0x100010fa
mov eax, dword [ebp - 0x1a0]
sub eax, 0x82ccdddd
je 0x1000224e
jmp 0x10001110
mov eax, dword [ebp - 0x1a0]
sub eax, 0x83a3f230
je 0x10002656
jmp 0x10001126
mov eax, dword [ebp - 0x1a0]
sub eax, 0x88a530c0
je 0x1000227c
jmp 0x1000113c
mov eax, dword [ebp - 0x1a0]
sub eax, 0x8b8fdfa8
je 0x10001ff2
jmp 0x10001152
mov eax, dword [ebp - 0x1a0]
sub eax, 0x92fa8133
je 0x10002566
jmp 0x10001168
mov eax, dword [ebp - 0x1a0]
sub eax, 0x9a83cb75
je 0x10002156
jmp 0x1000117e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x9c996a30
je 0x100025ce
jmp 0x10001194
mov eax, dword [ebp - 0x1a0]
sub eax, 0xa7d3e1f0
je 0x10002492
jmp 0x100011aa
mov eax, dword [ebp - 0x1a0]
sub eax, 0xa8dcc032
je 0x10001c52
jmp 0x100011c0
mov eax, dword [ebp - 0x1a0]
sub eax, 0xae619be5
je 0x10002677
jmp 0x100011d6
mov eax, dword [ebp - 0x1a0]
sub eax, 0xb47b8e15
je 0x10001cb2
jmp 0x100011ec
mov eax, dword [ebp - 0x1a0]
sub eax, 0xb7940ff9
je 0x10002449
jmp 0x10001202
mov eax, dword [ebp - 0x1a0]
sub eax, 0xb86f9376
je 0x10002173
jmp 0x10001218
mov eax, dword [ebp - 0x1a0]
sub eax, 0xbb064e9b
je 0x1000220d
jmp 0x1000122e
mov eax, dword [ebp - 0x1a0]
sub eax, 0xc47e958d
je 0x100024f0
jmp 0x10001244
mov eax, dword [ebp - 0x1a0]
sub eax, 0xc7791ba3
je 0x1000226d
jmp 0x1000125a
mov eax, dword [ebp - 0x1a0]
sub eax, 0xc850cc39
je 0x10001686
jmp 0x10001270
mov eax, dword [ebp - 0x1a0]
sub eax, 0xca7bc841
je 0x10001e4d
jmp 0x10001286
mov eax, dword [ebp - 0x1a0]
sub eax, 0xcb2ecc16
je 0x1000189e
jmp 0x1000129c
mov eax, dword [ebp - 0x1a0]
sub eax, 0xcbdeead4
je 0x10001e73
jmp 0x100012b2
mov eax, dword [ebp - 0x1a0]
sub eax, 0xcfb2a988
je 0x10001e1f
jmp 0x100012c8
mov eax, dword [ebp - 0x1a0]
sub eax, 0xda45e103
je 0x10001db8
jmp 0x100012de
mov eax, dword [ebp - 0x1a0]
sub eax, 0xdb26eeaa
je 0x10001762
jmp 0x100012f4
mov eax, dword [ebp - 0x1a0]
sub eax, 0xdb79eeab
je 0x100025b4
jmp 0x1000130a
mov eax, dword [ebp - 0x1a0]
sub eax, 0xdcab2781
je 0x100017ff
jmp 0x10001320
mov eax, dword [ebp - 0x1a0]
sub eax, 0xe4781498
je 0x100018bf
jmp 0x10001336
mov eax, dword [ebp - 0x1a0]
sub eax, 0xf0c74221
je 0x10001a20
jmp 0x1000134c
mov eax, dword [ebp - 0x1a0]
sub eax, 0xf24c87ab
je 0x100020be
jmp 0x10001362
mov eax, dword [ebp - 0x1a0]
sub eax, 0xfd81af06
je 0x10002511
jmp 0x10001378
mov eax, dword [ebp - 0x1a0]
sub eax, 0x23a84
je 0x10001a3e
jmp 0x1000138e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x461d28c
je 0x10001a2f
jmp 0x100013a4
mov eax, dword [ebp - 0x1a0]
sub eax, 0xb3eace0
je 0x100019c5
jmp 0x100013ba
mov eax, dword [ebp - 0x1a0]
sub eax, 0x169ae8cd
je 0x10001be0
jmp 0x100013d0
mov eax, dword [ebp - 0x1a0]
sub eax, 0x171477cd
je 0x10001f04
jmp 0x100013e6
mov eax, dword [ebp - 0x1a0]
sub eax, 0x1a709e9b
je 0x100025e3
jmp 0x100013fc
mov eax, dword [ebp - 0x1a0]
sub eax, 0x1d63250b
je 0x10001d42
jmp 0x10001412
mov eax, dword [ebp - 0x1a0]
sub eax, 0x26173827
je 0x100018ce
jmp 0x10001428
mov eax, dword [ebp - 0x1a0]
sub eax, 0x28904a49
je 0x1000197c
jmp 0x1000143e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x2f07f327
je 0x1000191f
jmp 0x10001454
mov eax, dword [ebp - 0x1a0]
sub eax, 0x316d5895
je 0x10001771
jmp 0x1000146a
mov eax, dword [ebp - 0x1a0]
sub eax, 0x4a132363
je 0x100022a9
jmp 0x10001480
mov eax, dword [ebp - 0x1a0]
sub eax, 0x4de5fc86
je 0x10001940
jmp 0x10001496
mov eax, dword [ebp - 0x1a0]
sub eax, 0x4fa6e1ae
je 0x10002647
jmp 0x100014ac
mov eax, dword [ebp - 0x1a0]
sub eax, 0x502f251f
je 0x1000221c
jmp 0x100014c2
mov eax, dword [ebp - 0x1a0]
sub eax, 0x53dfb50f
je 0x10001b6a
jmp 0x100014d8
mov eax, dword [ebp - 0x1a0]
sub eax, 0x5478c3fc
je 0x100024a3
jmp 0x100014ee
mov eax, dword [ebp - 0x1a0]
sub eax, 0x558e3000
je 0x1000163d
jmp 0x10001504
mov eax, dword [ebp - 0x1a0]
sub eax, 0x5f9b5f0e
je 0x100023db
jmp 0x1000151a
mov eax, dword [ebp - 0x1a0]
sub eax, 0x5fc31519
je 0x100017a8
jmp 0x10001530
mov eax, dword [ebp - 0x1a0]
sub eax, 0x60196bb2
je 0x10001b5b
jmp 0x10001546
mov eax, dword [ebp - 0x1a0]
sub eax, 0x605bfd11
je 0x10001e8e
jmp 0x1000155c
mov eax, dword [ebp - 0x1a0]
sub eax, 0x612b177e
je 0x10002344
jmp 0x10001572
mov eax, dword [ebp - 0x1a0]
sub eax, 0x67e92001
je 0x10001d33
jmp 0x10001588
mov eax, dword [ebp - 0x1a0]
sub eax, 0x6913d4ba
je 0x100023cc
jmp 0x1000159e
mov eax, dword [ebp - 0x1a0]
sub eax, 0x6e34f4ac
je 0x10001aac
jmp 0x100015b4
mov eax, dword [ebp - 0x1a0]
sub eax, 0x7161e5c6
je 0x10001c61
jmp 0x100015ca
mov eax, dword [ebp - 0x1a0]
sub eax, 0x71c4fd03
je 0x100021c4
jmp 0x100015e0
mov eax, dword [ebp - 0x1a0]
sub eax, 0x724a3eae
je 0x10001fb9
jmp 0x100015f6
mov eax, dword [ebp - 0x1a0]
sub eax, 0x7462a10f
je 0x10001e2e
jmp 0x1000160c
mov eax, dword [ebp - 0x1a0]
sub eax, 0x774783e5
je 0x10001faa
jmp 0x10001622
mov eax, dword [ebp - 0x1a0]
sub eax, 0x7fcd473e
je 0x100017b7
jmp 0x10001638
jmp 0x10002681
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
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, 0x5478c3fc
mov ecx, 0xc850cc39
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [ebp - 0x19c]
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
mov dword [ebp - 0x174], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x178], 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.1000b970
add esp, 0xc
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x160], eax
mov ecx, dword [0x1008c740]
mov eax, dword [0x1008c73c]
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, 0x5478c3fc
mov ecx, 0xdb26eeaa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x316d5895
jmp 0x10002681
mov eax, dword [ebp - 0x160]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x17c], eax
mov eax, 0x5fc31519
mov ecx, 0x7fcd473e
cmp dword [ebp - 0x17c], 0
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x5f9b5f0e
jmp 0x10002681
mov ecx, dword [ebp - 0x17c]
mov edx, dword [ebp - 0x178]
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 - 0x15c], eax
mov dword [ebp - 0x198], 0xdcab2781
jmp 0x10002681
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x17c]
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 dword [ebp - 0x184], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x184], eax
sete al
and al, 1
mov byte [ebp - 0x156], al
mov dword [ebp - 0x198], 0xcb2ecc16
jmp 0x10002681
mov dl, byte [ebp - 0x156]
mov eax, 0x26173827
mov ecx, 0xe4781498
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x5f9b5f0e
jmp 0x10002681
mov eax, dword [ebp - 0x184]
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 - 0x188], eax
mov dword [ebp - 0x198], 0x2f07f327
jmp 0x10002681
cmp dword [ebp - 0x188], 0
setne al
and al, 1
mov byte [ebp - 0x155], al
mov dword [ebp - 0x198], 0x4de5fc86
jmp 0x10002681
mov dl, byte [ebp - 0x155]
mov eax, 0x80a10027
mov ecx, 0x23a84
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x198], 0x28904a49
jmp 0x10002681
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
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, 0xc47e958d
mov ecx, 0xb3eace0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [ebp - 0x154]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
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, 0xc47e958d
mov ecx, 0xf0c74221
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x461d28c
jmp 0x10002681
mov dword [ebp - 0x198], 0x5f9b5f0e
jmp 0x10002681
mov ecx, dword [0x1008c740]
mov eax, dword [0x1008c73c]
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, 0xfd81af06
mov ecx, 0x6e34f4ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [ebp - 0x188]
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 dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x14c], eax
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
mov edx, eax
sub edx, 0x2baf63fb
sub edx, 1
add edx, 0x2baf63fb
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, 0xfd81af06
mov ecx, 0x60196bb2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x53dfb50f
jmp 0x10002681
mov ecx, dword [0x1008c740]
mov eax, dword [0x1008c73c]
mov edx, ecx
add edx, 0xcf9c01d2
sub edx, 1
sub edx, 0xcf9c01d2
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, 0x92fa8133
mov ecx, 0x169ae8cd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [ebp - 0x14c]
mov ecx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x150]
sub eax, 0xe011860a
add eax, ecx
add eax, 0xe011860a
mov dword [ebp - 0x194], eax
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
mov edx, eax
sub edx, 0xf548109c
sub edx, 1
add edx, 0xf548109c
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, 0x92fa8133
mov ecx, 0xa8dcc032
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x7161e5c6
jmp 0x10002681
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
mov edx, eax
add edx, 0x35c0b4da
sub edx, 1
sub edx, 0x35c0b4da
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, 0xdb79eeab
mov ecx, 0xb47b8e15
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [ebp - 0x170]
mov word [eax], 0
mov ecx, dword [0x1008c740]
mov eax, dword [0x1008c73c]
mov edx, ecx
add edx, 0x5a69f12
sub edx, 1
sub edx, 0x5a69f12
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, 0xdb79eeab
mov ecx, 0x67e92001
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x1d63250b
jmp 0x10002681
mov ecx, dword [0x1008c740]
mov eax, dword [0x1008c73c]
mov edx, ecx
sub edx, 0xeba281c9
sub edx, 1
add edx, 0xeba281c9
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, 0x9c996a30
mov ecx, 0xda45e103
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [ebp - 0x170]
movzx eax, word [eax]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x194]
add eax, 4
mov dword [ebp - 0x144], eax
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
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, 0x9c996a30
mov ecx, 0xcfb2a988
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x7462a10f
jmp 0x10002681
mov eax, dword [ebp - 0x144]
movzx eax, word [eax + 2]
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x198], 0xca7bc841
jmp 0x10002681
mov edx, dword [ebp - 0x148]
mov esi, dword [ebp - 0x140]
mov eax, 0x88a530c0
mov ecx, 0xcbdeead4
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x198], 0x605bfd11
jmp 0x10002681
mov ecx, dword [0x1008c740]
mov eax, dword [0x1008c73c]
mov edx, ecx
sub edx, 0xc40af80b
sub edx, 1
add edx, 0xc40af80b
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, 0x1a709e9b
mov ecx, 0x171477cd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov ecx, dword [ebp - 0x13c]
sub ecx, 0xd9faee9b
add ecx, 0x18
add ecx, 0xd9faee9b
mov eax, dword [ebp - 0x194]
movzx eax, word [eax + 0x14]
add ecx, 0xf2509ef6
add ecx, eax
sub ecx, 0xf2509ef6
mov eax, dword [ebp - 0x170]
movzx eax, word [eax]
imul edx, eax, 0x28
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x16c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov dword [ebp - 0x138], eax
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
mov edx, eax
add edx, 0x25a20958
sub edx, 1
sub edx, 0x25a20958
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, 0x1a709e9b
mov ecx, 0x774783e5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x724a3eae
jmp 0x10002681
mov ecx, dword [ebp - 0x138]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100173b0
call fcn.1000dce0
add esp, 8
mov edx, eax
mov eax, 0x8b8fdfa8
mov ecx, 0xb86f9376
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [ebp - 0x168]
mov dword [eax], 0
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x16c]
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 - 0x168]
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 - 0x164]
mov byte [eax], cl
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x16c]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
add eax, 0xdc5cc2d9
add eax, ecx
sub eax, 0xdc5cc2d9
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x16c]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
sub eax, 0x685080
add eax, ecx
add eax, 0x685080
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x198], 0xf24c87ab
jmp 0x10002681
mov eax, dword [ebp - 0x12c]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x130]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1000bad0
add esp, 0xc
mov eax, dword [ebp - 0x168]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x180]
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub esi, 0x6d56c2fe
add esi, eax
add esi, 0x6d56c2fe
mov eax, dword [ebp - 0x168]
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 - 0x127], al
mov dword [ebp - 0x198], 0x9a83cb75
jmp 0x10002681
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x127]
mov byte [eax], cl
mov dword [ebp - 0x198], 0xb86f9376
jmp 0x10002681
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
mov edx, eax
sub edx, 0x3e2a53e7
sub edx, 1
add edx, 0x3e2a53e7
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, 0x4fa6e1ae
mov ecx, 0x71c4fd03
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
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, 0x4fa6e1ae
mov ecx, 0xbb064e9b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x502f251f
jmp 0x10002681
mov eax, dword [ebp - 0x170]
mov ax, word [eax]
xor ecx, ecx
sub cx, ax
xor eax, eax
sub ax, 1
add cx, ax
xor eax, eax
sub ax, cx
mov word [ebp - 0x126], ax
mov dword [ebp - 0x198], 0x82ccdddd
jmp 0x10002681
mov eax, dword [ebp - 0x170]
mov cx, word [ebp - 0x126]
mov word [eax], cx
mov dword [ebp - 0x198], 0xc7791ba3
jmp 0x10002681
mov dword [ebp - 0x198], 0x1d63250b
jmp 0x10002681
mov eax, dword [ebp - 0x184]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x198], 0x4a132363
jmp 0x10002681
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x198], 0x81064bc1
jmp 0x10002681
mov ecx, dword [0x1008c740]
mov eax, dword [0x1008c73c]
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, 0x83a3f230
mov ecx, 0x612b177e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x1008c740]
mov eax, dword [0x1008c73c]
mov edx, ecx
add edx, 0x18665a68
sub edx, 1
sub edx, 0x18665a68
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, 0x83a3f230
mov ecx, 0x6913d4ba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov dword [ebp - 0x198], 0x5f9b5f0e
jmp 0x10002681
mov ecx, dword [0x1008c740]
mov eax, dword [0x1008c73c]
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, 0xae619be5
mov ecx, 0xb7940ff9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov eax, dword [0x1008c740]
mov ecx, dword [0x1008c73c]
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, 0xae619be5
mov ecx, 0xa7d3e1f0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x198], eax
jmp 0x10002681
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000ad70
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x174], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x178], 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.1000b970
add esp, 0xc
mov dword [ebp - 0x198], 0xc850cc39
jmp 0x10002681
mov eax, dword [ebp - 0x154]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x198], 0xb3eace0
jmp 0x10002681
mov eax, dword [ebp - 0x188]
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 dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x198], 0x6e34f4ac
jmp 0x10002681
mov eax, dword [ebp - 0x14c]
mov ecx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x150]
add eax, 0x3cae3899
add eax, ecx
sub eax, 0x3cae3899
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x198], 0x169ae8cd
jmp 0x10002681
mov eax, dword [ebp - 0x170]
mov word [eax], 0
mov dword [ebp - 0x198], 0xb47b8e15
jmp 0x10002681
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x198], 0xda45e103
jmp 0x10002681
mov ecx, dword [ebp - 0x13c]
add ecx, 0x2bdb89b8
add ecx, 0x18
sub ecx, 0x2bdb89b8
mov eax, dword [ebp - 0x194]
movzx eax, word [eax + 0x14]
sub ecx, 0xf6c17835
add ecx, eax
add ecx, 0xf6c17835
mov eax, dword [ebp - 0x170]
movzx eax, word [eax]
imul eax, eax, 0x28
sub ecx, 0xb0a112bb
add ecx, eax
add ecx, 0xb0a112bb
mov eax, dword [ebp - 0x16c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0x198], 0x171477cd
jmp 0x10002681
mov dword [ebp - 0x198], 0x71c4fd03
jmp 0x10002681
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x198], 0x612b177e
jmp 0x10002681
mov dword [ebp - 0x198], 0xb7940ff9
jmp 0x100010c8