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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1a4
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1ac], eax
mov eax, dword [0x100e5a80]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1a8], 0x33da8788
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1b0], eax
sub eax, 0x8413bf42
je 0x100129e2
jmp 0x100117d5
mov eax, dword [ebp - 0x1b0]
sub eax, 0x849edc30
je 0x10012be6
jmp 0x100117eb
mov eax, dword [ebp - 0x1b0]
sub eax, 0x86e4273c
je 0x100128ca
jmp 0x10011801
mov eax, dword [ebp - 0x1b0]
sub eax, 0x88283f90
je 0x1001252d
jmp 0x10011817
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8d3b3a30
je 0x1001245f
jmp 0x1001182d
mov eax, dword [ebp - 0x1b0]
sub eax, 0x959e4233
je 0x10012c54
jmp 0x10011843
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9b12d977
je 0x10011de6
jmp 0x10011859
mov eax, dword [ebp - 0x1b0]
sub eax, 0xad7add00
je 0x10012e1d
jmp 0x1001186f
mov eax, dword [ebp - 0x1b0]
sub eax, 0xaf674c67
je 0x10012e32
jmp 0x10011885
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb0295469
je 0x10012bc5
jmp 0x1001189b
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb3cb5743
je 0x10012b68
jmp 0x100118b1
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb50aff00
je 0x100126c0
jmp 0x100118c7
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb7c4036f
je 0x1001229f
jmp 0x100118dd
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb8b491eb
je 0x10012811
jmp 0x100118f3
mov eax, dword [ebp - 0x1b0]
sub eax, 0xbbad152f
je 0x10012cdc
jmp 0x10011909
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc139e758
je 0x1001246e
jmp 0x1001191f
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc52e2c10
je 0x10012dc2
jmp 0x10011935
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc677f710
je 0x10012cca
jmp 0x1001194b
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc6834507
je 0x10012b59
jmp 0x10011961
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd17b923d
je 0x10011e8e
jmp 0x10011977
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd6252866
je 0x100128e8
jmp 0x1001198d
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd80f69d9
je 0x10012362
jmp 0x100119a3
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd9ea9f13
je 0x10012a5f
jmp 0x100119b9
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe182b982
je 0x10012639
jmp 0x100119cf
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe6d7cc1f
je 0x10012adb
jmp 0x100119e5
mov eax, dword [ebp - 0x1b0]
sub eax, 0xedeb0d08
je 0x1001203c
jmp 0x100119fb
mov eax, dword [ebp - 0x1b0]
sub eax, 0xef3128e2
je 0x10012015
jmp 0x10011a11
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf2fbc6f9
je 0x10012da1
jmp 0x10011a27
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf51442bc
je 0x10012564
jmp 0x10011a3d
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf5888b8e
je 0x1001265c
jmp 0x10011a53
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf992fd74
je 0x10012eed
jmp 0x10011a69
mov eax, dword [ebp - 0x1b0]
sub eax, 0xfb179cc5
je 0x10012371
jmp 0x10011a7f
mov eax, dword [ebp - 0x1b0]
sub eax, 0xfc1c6c4a
je 0x100123c2
jmp 0x10011a95
mov eax, dword [ebp - 0x1b0]
sub eax, 0xfc81a361
je 0x1001219a
jmp 0x10011aab
mov eax, dword [ebp - 0x1b0]
sub eax, 0xfd9087a1
je 0x100127f0
jmp 0x10011ac1
mov eax, dword [ebp - 0x1b0]
sub eax, 0xfee54c02
je 0x100125ad
jmp 0x10011ad7
mov eax, dword [ebp - 0x1b0]
sub eax, 0x53c38bd
je 0x10012ece
jmp 0x10011aed
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9253929
je 0x10011e9d
jmp 0x10011b03
mov eax, dword [ebp - 0x1b0]
sub eax, 0xae583c8
je 0x10012d56
jmp 0x10011b19
mov eax, dword [ebp - 0x1b0]
sub eax, 0xba92ce9
je 0x10011fe5
jmp 0x10011b2f
mov eax, dword [ebp - 0x1b0]
sub eax, 0xed1c97d
je 0x10012ba4
jmp 0x10011b45
mov eax, dword [ebp - 0x1b0]
sub eax, 0x10e31451
je 0x10012a50
jmp 0x10011b5b
mov eax, dword [ebp - 0x1b0]
sub eax, 0x11d380c8
je 0x1001223c
jmp 0x10011b71
mov eax, dword [ebp - 0x1b0]
sub eax, 0x12522087
je 0x10012b77
jmp 0x10011b87
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1353edf8
je 0x10012752
jmp 0x10011b9d
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1aee3bb5
je 0x10012263
jmp 0x10011bb3
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1ca6bebf
je 0x10012a8a
jmp 0x10011bc9
mov eax, dword [ebp - 0x1b0]
sub eax, 0x270880b3
je 0x10012685
jmp 0x10011bdf
mov eax, dword [ebp - 0x1b0]
sub eax, 0x28fc0830
je 0x10012999
jmp 0x10011bf5
mov eax, dword [ebp - 0x1b0]
sub eax, 0x29ad29f5
je 0x1001222d
jmp 0x10011c0b
mov eax, dword [ebp - 0x1b0]
sub eax, 0x2cd488b8
je 0x10012115
jmp 0x10011c21
mov eax, dword [ebp - 0x1b0]
sub eax, 0x31535cef
je 0x10012124
jmp 0x10011c37
mov eax, dword [ebp - 0x1b0]
sub eax, 0x32ecd118
je 0x100122f0
jmp 0x10011c4d
mov eax, dword [ebp - 0x1b0]
sub eax, 0x33da8788
je 0x10011d70
jmp 0x10011c63
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3ba1ce26
je 0x10012006
jmp 0x10011c79
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3ecf5678
je 0x10012ebf
jmp 0x10011c8f
mov eax, dword [ebp - 0x1b0]
sub eax, 0x448098ab
je 0x10012e47
jmp 0x10011ca5
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4495fddf
je 0x100124bf
jmp 0x10011cbb
mov eax, dword [ebp - 0x1b0]
sub eax, 0x461584bd
je 0x1001253c
jmp 0x10011cd1
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4dec596c
je 0x10012353
jmp 0x10011ce7
mov eax, dword [ebp - 0x1b0]
sub eax, 0x62bf0124
je 0x10012284
jmp 0x10011cfd
mov eax, dword [ebp - 0x1b0]
sub eax, 0x677d7346
je 0x10012701
jmp 0x10011d13
mov eax, dword [ebp - 0x1b0]
sub eax, 0x69a1f553
je 0x10012cfd
jmp 0x10011d29
mov eax, dword [ebp - 0x1b0]
sub eax, 0x6c73fd79
je 0x10011f13
jmp 0x10011d3f
mov eax, dword [ebp - 0x1b0]
sub eax, 0x724af722
je 0x100120a8
mov ecx, dword [0x100e6f5c]
mov eax, dword [0x100e6f58]
mov edx, ecx
sub edx, 0x672c99cb
sub edx, 1
add edx, 0x672c99cb
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, 0xbbad152f
mov ecx, 0x9b12d977
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x1ac]
push eax
mov ecx, esp
mov dword [ebp - 0x18c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x188], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x184], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x180], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x17c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x178], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x174], ecx
mov dword [ebp - 0x190], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x170], eax
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
mov edx, eax
sub edx, 0xd2378f41
sub edx, 1
add edx, 0xd2378f41
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, 0xbbad152f
mov ecx, 0xd17b923d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0x9253929
jmp 0x10012ef7
mov ecx, dword [0x100e6f5c]
mov eax, dword [0x100e6f58]
mov edx, ecx
sub edx, 0xcb1a3d09
sub edx, 1
add edx, 0xcb1a3d09
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, 0x69a1f553
mov ecx, 0x6c73fd79
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x194], eax
lea eax, [ebp - 0x120]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1002c2d0
add esp, 0xc
mov eax, dword [ebp - 0x190]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x198], eax
cmp dword [ebp - 0x198], 0
setne al
and al, 1
mov byte [ebp - 0x169], al
mov ecx, dword [0x100e6f5c]
mov eax, dword [0x100e6f58]
mov edx, ecx
add edx, 0x8f26b335
sub edx, 1
sub edx, 0x8f26b335
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, 0x69a1f553
mov ecx, 0xba92ce9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov dl, byte [ebp - 0x169]
mov eax, 0x3ba1ce26
mov ecx, 0xef3128e2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0x849edc30
jmp 0x10012ef7
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x1a8], 0xedeb0d08
jmp 0x10012ef7
mov ecx, dword [ebp - 0x168]
mov edx, dword [ebp - 0x164]
lea eax, [ebp - 0x120]
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 - 0x120]
mov dword [ebp - 0x19c], eax
lea eax, [ebp - 0x114]
mov ecx, dword [ebp - 0x198]
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 - 0x1a8], 0x724af722
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0x849edc30
jmp 0x10012ef7
mov ecx, dword [0x100e6f5c]
mov eax, dword [0x100e6f58]
mov edx, ecx
add edx, 0x8c3e4839
sub edx, 1
sub edx, 0x8c3e4839
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, 0xae583c8
mov ecx, 0xfc81a361
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x1a0]
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 - 0x160], eax
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
mov edx, eax
add edx, 0x63310d1e
sub edx, 1
sub edx, 0x63310d1e
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, 0xae583c8
mov ecx, 0x29ad29f5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0x11d380c8
jmp 0x10012ef7
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x1a4], eax
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x1a8], 0x1aee3bb5
jmp 0x10012ef7
mov edx, dword [ebp - 0x15c]
mov eax, 0x62bf0124
mov ecx, 0xfb179cc5
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1a8], 0xb7c4036f
jmp 0x10012ef7
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
mov edx, eax
sub edx, 0xacd16655
sub edx, 1
add edx, 0xacd16655
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, 0xf2fbc6f9
mov ecx, 0x32ecd118
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x158]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
mov edx, eax
sub edx, 0x1d1b1d96
sub edx, 1
add edx, 0x1d1b1d96
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, 0xf2fbc6f9
mov ecx, 0x4dec596c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0xd80f69d9
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0x849edc30
jmp 0x10012ef7
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
mov edx, eax
sub edx, 0x57e46649
sub edx, 1
add edx, 0x57e46649
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, 0xc52e2c10
mov ecx, 0xfc1c6c4a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x1a4]
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 - 0x18c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x188]
mov dword [eax], ecx
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
mov edx, eax
sub edx, 0x360f87ed
sub edx, 1
add edx, 0x360f87ed
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, 0xc52e2c10
mov ecx, 0x8d3b3a30
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0xc139e758
jmp 0x10012ef7
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
mov edx, eax
add edx, 0x653f08dd
sub edx, 1
sub edx, 0x653f08dd
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, 0xad7add00
mov ecx, 0x4495fddf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x188]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0x3c]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x154], eax
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
mov edx, eax
add edx, 0x3c380bb6
sub edx, 1
sub edx, 0x3c380bb6
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, 0xad7add00
mov ecx, 0x88283f90
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0x461584bd
jmp 0x10012ef7
mov eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x154]
mov dword [eax], ecx
mov eax, dword [ebp - 0x180]
mov word [eax], 0
mov dword [ebp - 0x1a8], 0xf51442bc
jmp 0x10012ef7
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
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, 0xaf674c67
mov ecx, 0xfee54c02
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x180]
movzx eax, word [eax]
mov dword [ebp - 0x150], eax
mov ecx, dword [0x100e6f5c]
mov eax, dword [0x100e6f58]
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, 0xaf674c67
mov ecx, 0x7fcd0abe
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x1a8], 0xf5888b8e
jmp 0x10012ef7
mov eax, dword [ebp - 0x14c]
movzx esi, word [eax]
mov edx, dword [ebp - 0x150]
mov eax, 0x12522087
mov ecx, 0x270880b3
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
add eax, 0x653adfc4
add eax, 0x18
sub eax, 0x653adfc4
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
add eax, 4
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x1a8], 0xb50aff00
jmp 0x10012ef7
mov eax, dword [ebp - 0x144]
movzx ecx, word [eax + 0x10]
mov eax, dword [ebp - 0x148]
add eax, 0xea3e7684
add eax, ecx
sub eax, 0xea3e7684
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x180]
mov ax, word [eax]
mov word [ebp - 0x13c], ax
mov dword [ebp - 0x1a8], 0x677d7346
jmp 0x10012ef7
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
mov edx, eax
add edx, 0xd5e1ba1c
sub edx, 1
sub edx, 0xd5e1ba1c
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, 0x448098ab
mov ecx, 0x1353edf8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov ax, word [ebp - 0x13c]
movzx eax, ax
imul eax, eax, 0x28
mov ecx, dword [ebp - 0x140]
sub ecx, 0xcfcc5492
add ecx, eax
add ecx, 0xcfcc5492
mov eax, dword [ebp - 0x17c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x17c]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10039f12
call fcn.1002fc30
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x139], al
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
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, 0x448098ab
mov ecx, 0xfd9087a1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov dl, byte [ebp - 0x139]
mov eax, 0xb8b491eb
mov ecx, 0x28fc0830
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x178]
mov dword [eax], 0
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0xe1d85827
add edx, eax
add edx, 0xe1d85827
mov eax, dword [ebp - 0x178]
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 - 0x174]
mov byte [eax], cl
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x17c]
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 - 0x138], eax
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x1a8], 0x86e4273c
jmp 0x10012ef7
mov eax, dword [ebp - 0x130]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x1a8], 0xd6252866
jmp 0x10012ef7
mov ecx, dword [ebp - 0x134]
mov eax, dword [ebp - 0x12c]
sub ecx, 0x784905f
add ecx, eax
add ecx, 0x784905f
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x138]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1002c430
add esp, 0xc
mov eax, dword [ebp - 0x178]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x17c]
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 - 0x178]
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 - 0x174]
mov byte [eax], cl
mov dword [ebp - 0x1a8], 0x28fc0830
jmp 0x10012ef7
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
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, 0x3ecf5678
mov ecx, 0x8413bf42
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov ecx, dword [0x100e6f5c]
mov eax, dword [0x100e6f58]
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, 0x3ecf5678
mov ecx, 0x10e31451
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0xd9ea9f13
jmp 0x10012ef7
mov eax, dword [ebp - 0x180]
mov ax, word [eax]
add ax, 0x8b1d
add ax, 1
sub ax, 0x8b1d
mov word [ebp - 0x126], ax
mov dword [ebp - 0x1a8], 0x1ca6bebf
jmp 0x10012ef7
mov eax, dword [0x100e6f5c]
mov ecx, dword [0x100e6f58]
mov edx, eax
add edx, 0x604436ea
sub edx, 1
sub edx, 0x604436ea
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, 0x53c38bd
mov ecx, 0xe6d7cc1f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov eax, dword [ebp - 0x180]
mov cx, word [ebp - 0x126]
mov word [eax], cx
mov ecx, dword [0x100e6f5c]
mov eax, dword [0x100e6f58]
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, 0x53c38bd
mov ecx, 0xc6834507
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0xb3cb5743
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0xf51442bc
jmp 0x10012ef7
mov eax, dword [ebp - 0x1a0]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x1a8], 0xed1c97d
jmp 0x10012ef7
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0xb0295469
jmp 0x10012ef7
mov eax, dword [ebp - 0x194]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0x849edc30
jmp 0x10012ef7
mov ecx, dword [0x100e6f5c]
mov eax, dword [0x100e6f58]
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, 0xf992fd74
mov ecx, 0x959e4233
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov ecx, dword [0x100e6f5c]
mov eax, dword [0x100e6f58]
mov edx, ecx
add edx, 0x7fc48fa7
sub edx, 1
sub edx, 0x7fc48fa7
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, 0xf992fd74
mov ecx, 0xc677f710
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x10012ef7
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1002b530
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x190], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x1a8], 0x9b12d977
jmp 0x10012ef7
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x194], eax
lea eax, [ebp - 0x120]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1002c2d0
add esp, 0xc
mov eax, dword [ebp - 0x190]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x1a8], 0x6c73fd79
jmp 0x10012ef7
mov eax, dword [ebp - 0x1a0]
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 - 0x1a8], 0xfc81a361
jmp 0x10012ef7
mov eax, dword [ebp - 0x158]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0x32ecd118
jmp 0x10012ef7
mov eax, dword [ebp - 0x1a4]
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 - 0x18c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x188]
mov dword [eax], ecx
mov dword [ebp - 0x1a8], 0xfc1c6c4a
jmp 0x10012ef7
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x1a8], 0x4495fddf
jmp 0x10012ef7
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x1a8], 0xfee54c02
jmp 0x10012ef7
mov ax, word [ebp - 0x13c]
movzx eax, ax
imul edx, eax, 0x28
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x140]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x17c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x17c]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10039f12
call fcn.1002fc30
add esp, 8
mov dword [ebp - 0x1a8], 0x1353edf8
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0x8413bf42
jmp 0x10012ef7
mov eax, dword [ebp - 0x180]
mov cx, word [ebp - 0x126]
mov word [eax], cx
mov dword [ebp - 0x1a8], 0xe6d7cc1f
jmp 0x10012ef7
mov dword [ebp - 0x1a8], 0x959e4233
jmp 0x100117b9