Function at 0x10001190
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 [0x10095600]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x10096938]
mov eax, dword [0x10096934]
mov edx, ecx
sub edx, 0x21504495
sub edx, 1
add edx, 0x21504495
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], 0xd0130fb
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xb0], eax
sub eax, 0x80adef3e
je 0x10001dc5
jmp 0x10001214
mov eax, dword [ebp - 0xb0]
sub eax, 0x80da6bf8
je 0x1000198b
jmp 0x1000122a
mov eax, dword [ebp - 0xb0]
sub eax, 0x83c57167
je 0x10002372
jmp 0x10001240
mov eax, dword [ebp - 0xb0]
sub eax, 0x8832b8e2
je 0x1000249e
jmp 0x10001256
mov eax, dword [ebp - 0xb0]
sub eax, 0x89a1624e
je 0x10001900
jmp 0x1000126c
mov eax, dword [ebp - 0xb0]
sub eax, 0x8a35863e
je 0x10002159
jmp 0x10001282
mov eax, dword [ebp - 0xb0]
sub eax, 0x8c79591a
je 0x100025c8
jmp 0x10001298
mov eax, dword [ebp - 0xb0]
sub eax, 0x90f8878c
je 0x100028dd
jmp 0x100012ae
mov eax, dword [ebp - 0xb0]
sub eax, 0x9595edad
je 0x1000244d
jmp 0x100012c4
mov eax, dword [ebp - 0xb0]
sub eax, 0x97acdd47
je 0x100028f2
jmp 0x100012da
mov eax, dword [ebp - 0xb0]
sub eax, 0x9bbf3509
je 0x10001c28
jmp 0x100012f0
mov eax, dword [ebp - 0xb0]
sub eax, 0x9e964ee8
je 0x10001af4
jmp 0x10001306
mov eax, dword [ebp - 0xb0]
sub eax, 0xa074cb14
je 0x10001a01
jmp 0x1000131c
mov eax, dword [ebp - 0xb0]
sub eax, 0xa4f40cca
je 0x100025ff
jmp 0x10001332
mov eax, dword [ebp - 0xb0]
sub eax, 0xa7819e70
je 0x1000223d
jmp 0x10001348
mov eax, dword [ebp - 0xb0]
sub eax, 0xa9501d7e
je 0x1000230c
jmp 0x1000135e
mov eax, dword [ebp - 0xb0]
sub eax, 0xab37b027
je 0x10002750
jmp 0x10001374
mov eax, dword [ebp - 0xb0]
sub eax, 0xad5257c9
je 0x10001f21
jmp 0x1000138a
mov eax, dword [ebp - 0xb0]
sub eax, 0xb47b574e
je 0x10001fd4
jmp 0x100013a0
mov eax, dword [ebp - 0xb0]
sub eax, 0xb7b881d4
je 0x1000190f
jmp 0x100013b6
mov eax, dword [ebp - 0xb0]
sub eax, 0xbac13545
je 0x10001eda
jmp 0x100013cc
mov eax, dword [ebp - 0xb0]
sub eax, 0xc8f0c917
je 0x100028b5
jmp 0x100013e2
mov eax, dword [ebp - 0xb0]
sub eax, 0xca2c4e68
je 0x10002829
jmp 0x100013f8
mov eax, dword [ebp - 0xb0]
sub eax, 0xdf096af6
je 0x10001c37
jmp 0x1000140e
mov eax, dword [ebp - 0xb0]
sub eax, 0xe6ecf1fb
je 0x10001f4e
jmp 0x10001424
mov eax, dword [ebp - 0xb0]
sub eax, 0xe9ca2763
je 0x10001e16
jmp 0x1000143a
mov eax, dword [ebp - 0xb0]
sub eax, 0xed10c307
je 0x1000228e
jmp 0x10001450
mov eax, dword [ebp - 0xb0]
sub eax, 0xf117479b
je 0x1000271b
jmp 0x10001466
mov eax, dword [ebp - 0xb0]
sub eax, 0xf38a1c0b
je 0x100020a6
jmp 0x1000147c
mov eax, dword [ebp - 0xb0]
sub eax, 0xf4a462df
je 0x10001dab
jmp 0x10001492
mov eax, dword [ebp - 0xb0]
sub eax, 0xfa9ad7b3
je 0x1000214a
jmp 0x100014a8
mov eax, dword [ebp - 0xb0]
sub eax, 0x1437af1
je 0x10001f3f
jmp 0x100014be
mov eax, dword [ebp - 0xb0]
sub eax, 0x1a7c5dd
je 0x100026f8
jmp 0x100014d4
mov eax, dword [ebp - 0xb0]
sub eax, 0x4b2df69
je 0x10001b3d
jmp 0x100014ea
mov eax, dword [ebp - 0xb0]
sub eax, 0x9c73571
je 0x100023da
jmp 0x10001500
mov eax, dword [ebp - 0xb0]
sub eax, 0xcc4a961
je 0x10001f07
jmp 0x10001516
mov eax, dword [ebp - 0xb0]
sub eax, 0xd0130fb
je 0x10001807
jmp 0x1000152c
mov eax, dword [ebp - 0xb0]
sub eax, 0xe37496e
je 0x10002622
jmp 0x10001542
mov eax, dword [ebp - 0xb0]
sub eax, 0x15292fdb
je 0x100026d5
jmp 0x10001558
mov eax, dword [ebp - 0xb0]
sub eax, 0x17f3c950
je 0x10002097
jmp 0x1000156e
mov eax, dword [ebp - 0xb0]
sub eax, 0x19b5bb8d
je 0x10001836
jmp 0x10001584
mov eax, dword [ebp - 0xb0]
sub eax, 0x1d909249
je 0x100020f7
jmp 0x1000159a
mov eax, dword [ebp - 0xb0]
sub eax, 0x1f57ff3a
je 0x100026c6
jmp 0x100015b0
mov eax, dword [ebp - 0xb0]
sub eax, 0x2f1f785f
je 0x10001a60
jmp 0x100015c6
mov eax, dword [ebp - 0xb0]
sub eax, 0x2f847b56
je 0x10002771
jmp 0x100015dc
mov eax, dword [ebp - 0xb0]
sub eax, 0x3149554e
je 0x10001d7e
jmp 0x100015f2
mov eax, dword [ebp - 0xb0]
sub eax, 0x34773843
je 0x10002025
jmp 0x10001608
mov eax, dword [ebp - 0xb0]
sub eax, 0x34f8204b
je 0x100028c7
jmp 0x1000161e
mov eax, dword [ebp - 0xb0]
sub eax, 0x3791a4d3
je 0x10001ee9
jmp 0x10001634
mov eax, dword [ebp - 0xb0]
sub eax, 0x37cbdba9
je 0x100025e6
jmp 0x1000164a
mov eax, dword [ebp - 0xb0]
sub eax, 0x3acc4d92
je 0x1000232a
jmp 0x10001660
mov eax, dword [ebp - 0xb0]
sub eax, 0x3d18f5ed
je 0x10001d9c
jmp 0x10001676
mov eax, dword [ebp - 0xb0]
sub eax, 0x3d9dd392
je 0x10001a7e
jmp 0x1000168c
mov eax, dword [ebp - 0xb0]
sub eax, 0x3f8f9419
je 0x10002780
jmp 0x100016a2
mov eax, dword [ebp - 0xb0]
sub eax, 0x41babb19
je 0x10001cca
jmp 0x100016b8
mov eax, dword [ebp - 0xb0]
sub eax, 0x465d3570
je 0x10001c79
jmp 0x100016ce
mov eax, dword [ebp - 0xb0]
sub eax, 0x4fc99eb7
je 0x10001fbd
jmp 0x100016e4
mov eax, dword [ebp - 0xb0]
sub eax, 0x5a1672a4
je 0x10001b9d
jmp 0x100016fa
mov eax, dword [ebp - 0xb0]
sub eax, 0x5d27c75a
je 0x100029b5
jmp 0x10001710
mov eax, dword [ebp - 0xb0]
sub eax, 0x5fd8b4f8
je 0x1000266b
jmp 0x10001726
mov eax, dword [ebp - 0xb0]
sub eax, 0x609aaa69
je 0x1000275f
jmp 0x1000173c
mov eax, dword [ebp - 0xb0]
sub eax, 0x64b54922
je 0x1000273e
jmp 0x10001752
mov eax, dword [ebp - 0xb0]
sub eax, 0x65254550
je 0x100021cf
jmp 0x10001768
mov eax, dword [ebp - 0xb0]
sub eax, 0x67b02833
je 0x10002408
jmp 0x1000177e
mov eax, dword [ebp - 0xb0]
sub eax, 0x6c81480c
je 0x10002359
mov al, byte [ebp - 0xa2]
mov cl, byte [ebp - 0xa1]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xab37b027
mov ecx, 0x19b5bb8d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
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
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 [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
sub edx, 0x8a9b2fc3
sub edx, 1
add edx, 0x8a9b2fc3
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, 0xab37b027
mov ecx, 0x89a1624e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dword [ebp - 0xa8], 0xb7b881d4
jmp 0x100029c9
mov ecx, dword [ebp - 0xac]
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.1000cc60
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], 0x80da6bf8
jmp 0x100029c9
mov ecx, dword [0x10096938]
mov eax, dword [0x10096934]
mov edx, ecx
sub edx, 0xa3b6e797
sub edx, 1
add edx, 0xa3b6e797
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, 0x609aaa69
mov ecx, 0xa074cb14
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [ebp - 0x64]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x5d], al
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
add edx, 0x1ac049fe
sub edx, 1
sub edx, 0x1ac049fe
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, 0x609aaa69
mov ecx, 0x2f1f785f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dl, byte [ebp - 0x5d]
mov eax, 0x3d9dd392
mov ecx, 0x7ab0568d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov ecx, dword [0x10096938]
mov eax, dword [0x10096934]
mov edx, ecx
sub edx, 0x472ab924
sub edx, 1
add edx, 0x472ab924
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, 0x2f847b56
mov ecx, 0x9e964ee8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
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, 0x2f847b56
mov ecx, 0x4b2df69
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dword [ebp - 0xa8], 0x64b54922
jmp 0x100029c9
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 eax, dword [ebp - 0x98]
mov dword [ebp - 0x5c], eax
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
sub edx, 0x11fa3cea
sub edx, 1
add edx, 0x11fa3cea
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, 0x3f8f9419
mov ecx, 0x9bbf3509
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dword [ebp - 0xa8], 0xdf096af6
jmp 0x100029c9
mov eax, dword [ebp - 0x5c]
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], 0x465d3570
jmp 0x100029c9
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
sub edx, 0x981ed806
sub edx, 1
add edx, 0x981ed806
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, 0x7bf9d4fa
mov ecx, 0x41babb19
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
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 ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x55], al
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
sub edx, 0x95623ee1
sub edx, 1
add edx, 0x95623ee1
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, 0x7bf9d4fa
mov ecx, 0x3149554e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dl, byte [ebp - 0x55]
mov eax, 0xf4a462df
mov ecx, 0x3d18f5ed
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dword [ebp - 0xa8], 0x64b54922
jmp 0x100029c9
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0xa8], 0x80adef3e
jmp 0x100029c9
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
add edx, 0x19732fdd
sub edx, 1
sub edx, 0x19732fdd
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, 0xca2c4e68
mov ecx, 0xe9ca2763
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [ebp - 0x54]
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 - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov ecx, dword [0x10096938]
mov eax, dword [0x10096934]
mov edx, ecx
add edx, 0x75187b36
sub edx, 1
sub edx, 0x75187b36
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, 0xca2c4e68
mov ecx, 0xbac13545
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dword [ebp - 0xa8], 0x3791a4d3
jmp 0x100029c9
mov edx, dword [ebp - 0x50]
mov eax, 0xcc4a961
mov ecx, 0xe6ecf1fb
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0xa8], 0xad5257c9
jmp 0x100029c9
mov eax, dword [ebp - 0x4c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0x1437af1
jmp 0x100029c9
mov dword [ebp - 0xa8], 0x64b54922
jmp 0x100029c9
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 ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
add eax, 0x3c
mov dword [ebp - 0x44], eax
mov dword [ebp - 0xa8], 0x4fc99eb7
jmp 0x100029c9
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0xa8], 0xb47b574e
jmp 0x100029c9
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
add edx, 0xe97167b6
sub edx, 1
sub edx, 0xe97167b6
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, 0x74a4f496
mov ecx, 0x34773843
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x40]
add ecx, 0xd0f0cb77
add ecx, eax
sub ecx, 0xd0f0cb77
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov word [eax], 0
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
sub edx, 0xc264a2db
sub edx, 1
add edx, 0xc264a2db
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, 0x74a4f496
mov ecx, 0x17f3c950
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dword [ebp - 0xa8], 0xf38a1c0b
jmp 0x100029c9
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
sub edx, 0x604c5e32
sub edx, 1
add edx, 0x604c5e32
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, 0xc8f0c917
mov ecx, 0x1d909249
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [ebp - 0x74]
mov ax, word [eax]
mov word [ebp - 0x3a], ax
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
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, 0xc8f0c917
mov ecx, 0xfa9ad7b3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dword [ebp - 0xa8], 0x8a35863e
jmp 0x100029c9
mov ecx, dword [0x10096938]
mov eax, dword [0x10096934]
mov edx, ecx
sub edx, 0x19c1bf64
sub edx, 1
add edx, 0x19c1bf64
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, 0x34f8204b
mov ecx, 0x65254550
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov ax, word [ebp - 0x3a]
movzx eax, ax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
movzx eax, word [eax + 6]
mov dword [ebp - 0x34], eax
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
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, 0x34f8204b
mov ecx, 0x7bd80dcb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
sub edx, 0x7114a11f
sub edx, 1
add edx, 0x7114a11f
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, 0x90f8878c
mov ecx, 0xed10c307
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x2d], al
mov ecx, dword [0x10096938]
mov eax, dword [0x10096934]
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, 0x90f8878c
mov ecx, 0xa9501d7e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dl, byte [ebp - 0x2d]
mov eax, 0x15292fdb
mov ecx, 0x3acc4d92
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
sub eax, 0xd855f398
add eax, 0x18
add eax, 0xd855f398
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
add eax, 4
mov dword [ebp - 0x28], eax
mov dword [ebp - 0xa8], 0x6c81480c
jmp 0x100029c9
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
sub ecx, 0x78c3ce2
add ecx, eax
add ecx, 0x78c3ce2
mov eax, dword [ebp - 0x74]
movzx eax, word [eax]
imul edx, eax, 0x28
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 - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100183b0
call fcn.1000efd0
add esp, 8
mov edx, eax
mov eax, 0x9c73571
mov ecx, 0x7a8ea0a3
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [ebp - 0x6c]
mov dword [eax], 0
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa8], 0x67b02833
jmp 0x100029c9
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
sub edx, eax
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x20]
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]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0xa8], 0x9595edad
jmp 0x100029c9
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
sub edx, 0xcb176794
sub edx, 1
add edx, 0xcb176794
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, 0x97acdd47
mov ecx, 0x8832b8e2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [ebp - 0x18]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
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, 0x5a0f0752
add edx, eax
add edx, 0x5a0f0752
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, ecx
xor ecx, ecx
sub ecx, esi
add eax, ecx
xor ecx, ecx
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.1000cdc0
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]
add esi, 0x4aa708ea
add esi, eax
sub esi, 0x4aa708ea
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 cl
and cl, 1
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
mov ecx, dword [0x10096938]
mov eax, dword [0x10096934]
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, 0x97acdd47
mov ecx, 0x8c79591a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dword [ebp - 0xa8], 0x7a8ea0a3
jmp 0x100029c9
mov eax, dword [ebp - 0x74]
mov ax, word [eax]
mov word [ebp - 0x14], ax
mov dword [ebp - 0xa8], 0xa4f40cca
jmp 0x100029c9
mov ax, word [ebp - 0x14]
add ax, 0xd249
add ax, 1
sub ax, 0xd249
mov word [ebp - 0x12], ax
mov dword [ebp - 0xa8], 0xe37496e
jmp 0x100029c9
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
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, 0x5d27c75a
mov ecx, 0x5fd8b4f8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov eax, dword [ebp - 0x74]
mov cx, word [ebp - 0x12]
mov word [eax], cx
mov eax, dword [0x10096938]
mov ecx, dword [0x10096934]
mov edx, eax
add edx, 0x9510fe51
sub edx, 1
sub edx, 0x9510fe51
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, 0x5d27c75a
mov ecx, 0x1f57ff3a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa8], eax
jmp 0x100029c9
mov dword [ebp - 0xa8], 0xf38a1c0b
jmp 0x100029c9
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0x1a7c5dd
jmp 0x100029c9
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0xf117479b
jmp 0x100029c9
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa8], 0x64b54922
jmp 0x100029c9
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000c060
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0xa8], 0x19b5bb8d
jmp 0x100029c9
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0xa8], 0xa074cb14
jmp 0x100029c9
mov dword [ebp - 0xa8], 0x9e964ee8
jmp 0x100029c9
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 eax, dword [ebp - 0x98]
mov dword [ebp - 0xa8], 0x5a1672a4
jmp 0x100029c9
mov eax, dword [ebp - 0x54]
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 - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xa8], 0xe9ca2763
jmp 0x100029c9
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xa8], 0x1d909249
jmp 0x100029c9
mov ax, word [ebp - 0x3a]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xa8], 0x65254550
jmp 0x100029c9
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0xa8], 0xed10c307
jmp 0x100029c9
mov eax, dword [ebp - 0x18]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
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, 0x890d0c7
add edx, eax
add edx, 0x890d0c7
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.1000cdc0
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, esi
xor esi, esi
sub esi, edi
add eax, esi
xor esi, esi
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]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x68]
mov byte [eax], cl
mov dword [ebp - 0xa8], 0x8832b8e2
jmp 0x100029c9
mov eax, dword [ebp - 0x74]
mov cx, word [ebp - 0x12]
mov word [eax], cx
mov dword [ebp - 0xa8], 0x5fd8b4f8
jmp 0x100011f8