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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x98
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa0], eax
mov eax, dword [0x10070604]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x9c], 0x9117f74a
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xa4], eax
sub eax, 0x87a7a7be
je 0x10003e15
jmp 0x10001465
mov eax, dword [ebp - 0xa4]
sub eax, 0x88866ae2
je 0x10002606
jmp 0x1000147b
mov eax, dword [ebp - 0xa4]
sub eax, 0x891a527d
je 0x1000217c
jmp 0x10001491
mov eax, dword [ebp - 0xa4]
sub eax, 0x8b359b95
je 0x10003d3c
jmp 0x100014a7
mov eax, dword [ebp - 0xa4]
sub eax, 0x8be776d9
je 0x1000218b
jmp 0x100014bd
mov eax, dword [ebp - 0xa4]
sub eax, 0x8f850458
je 0x10002853
jmp 0x100014d3
mov eax, dword [ebp - 0xa4]
sub eax, 0x9117f74a
je 0x10002072
jmp 0x100014e9
mov eax, dword [ebp - 0xa4]
sub eax, 0x9384615f
je 0x100045a4
jmp 0x100014ff
mov eax, dword [ebp - 0xa4]
sub eax, 0x9389c939
je 0x10004080
jmp 0x10001515
mov eax, dword [ebp - 0xa4]
sub eax, 0x96133d1b
je 0x10002a2a
jmp 0x1000152b
mov eax, dword [ebp - 0xa4]
sub eax, 0x96675d88
je 0x1000368b
jmp 0x10001541
mov eax, dword [ebp - 0xa4]
sub eax, 0x978f24a7
je 0x100045dd
jmp 0x10001557
mov eax, dword [ebp - 0xa4]
sub eax, 0xa15e239d
je 0x1000331f
jmp 0x1000156d
mov eax, dword [ebp - 0xa4]
sub eax, 0xa3823285
je 0x100043e5
jmp 0x10001583
mov eax, dword [ebp - 0xa4]
sub eax, 0xa58cf015
je 0x10003e24
jmp 0x10001599
mov eax, dword [ebp - 0xa4]
sub eax, 0xa6155b8d
je 0x10002a7b
jmp 0x100015af
mov eax, dword [ebp - 0xa4]
sub eax, 0xa6949470
je 0x10002e1e
jmp 0x100015c5
mov eax, dword [ebp - 0xa4]
sub eax, 0xa6f735ae
je 0x10003e92
jmp 0x100015db
mov eax, dword [ebp - 0xa4]
sub eax, 0xa70d3dbb
je 0x10004595
jmp 0x100015f1
mov eax, dword [ebp - 0xa4]
sub eax, 0xa9c906ab
je 0x10002b9e
jmp 0x10001607
mov eax, dword [ebp - 0xa4]
sub eax, 0xa9cc3ca8
je 0x1000308f
jmp 0x1000161d
mov eax, dword [ebp - 0xa4]
sub eax, 0xaa7e85c5
je 0x100043aa
jmp 0x10001633
mov eax, dword [ebp - 0xa4]
sub eax, 0xab54eab4
je 0x1000283c
jmp 0x10001649
mov eax, dword [ebp - 0xa4]
sub eax, 0xad0e08b2
je 0x10002269
jmp 0x1000165f
mov eax, dword [ebp - 0xa4]
sub eax, 0xae3b401e
je 0x10002701
jmp 0x10001675
mov eax, dword [ebp - 0xa4]
sub eax, 0xaf890a5c
je 0x10003c38
jmp 0x1000168b
mov eax, dword [ebp - 0xa4]
sub eax, 0xb1d2517e
je 0x10004420
jmp 0x100016a1
mov eax, dword [ebp - 0xa4]
sub eax, 0xb2b20775
je 0x1000373f
jmp 0x100016b7
mov eax, dword [ebp - 0xa4]
sub eax, 0xb2dbb1c4
je 0x1000436e
jmp 0x100016cd
mov eax, dword [ebp - 0xa4]
sub eax, 0xb3768a0e
je 0x10003292
jmp 0x100016e3
mov eax, dword [ebp - 0xa4]
sub eax, 0xb500cfbf
je 0x100029d9
jmp 0x100016f9
mov eax, dword [ebp - 0xa4]
sub eax, 0xb6d2dda1
je 0x10002b33
jmp 0x1000170f
mov eax, dword [ebp - 0xa4]
sub eax, 0xb6dddc8a
je 0x10003004
jmp 0x10001725
mov eax, dword [ebp - 0xa4]
sub eax, 0xba829845
je 0x10003ade
jmp 0x1000173b
mov eax, dword [ebp - 0xa4]
sub eax, 0xbb5fb01c
je 0x10002a8a
jmp 0x10001751
mov eax, dword [ebp - 0xa4]
sub eax, 0xbb875ad5
je 0x10002fb3
jmp 0x10001767
mov eax, dword [ebp - 0xa4]
sub eax, 0xbfe2ba15
je 0x10003f32
jmp 0x1000177d
mov eax, dword [ebp - 0xa4]
sub eax, 0xbfeef3bc
je 0x10002525
jmp 0x10001793
mov eax, dword [ebp - 0xa4]
sub eax, 0xc1ef7e4f
je 0x10003bb8
jmp 0x100017a9
mov eax, dword [ebp - 0xa4]
sub eax, 0xc2f18c38
je 0x10003c70
jmp 0x100017bf
mov eax, dword [ebp - 0xa4]
sub eax, 0xc4a09fd4
je 0x10003e03
jmp 0x100017d5
mov eax, dword [ebp - 0xa4]
sub eax, 0xc63fd5a3
je 0x10003a59
jmp 0x100017eb
mov eax, dword [ebp - 0xa4]
sub eax, 0xc8f49929
je 0x10003346
jmp 0x10001801
mov eax, dword [ebp - 0xa4]
sub eax, 0xca14a297
je 0x10002d57
jmp 0x10001817
mov eax, dword [ebp - 0xa4]
sub eax, 0xcad7f5d9
je 0x10003504
jmp 0x1000182d
mov eax, dword [ebp - 0xa4]
sub eax, 0xcb44a244
je 0x1000430b
jmp 0x10001843
mov eax, dword [ebp - 0xa4]
sub eax, 0xcc9b6b3e
je 0x1000309e
jmp 0x10001859
mov eax, dword [ebp - 0xa4]
sub eax, 0xcd879253
je 0x10004338
jmp 0x1000186f
mov eax, dword [ebp - 0xa4]
sub eax, 0xce12fce0
je 0x10003598
jmp 0x10001885
mov eax, dword [ebp - 0xa4]
sub eax, 0xcf191539
je 0x1000367c
jmp 0x1000189b
mov eax, dword [ebp - 0xa4]
sub eax, 0xcf799237
je 0x10002f62
jmp 0x100018b1
mov eax, dword [ebp - 0xa4]
sub eax, 0xd056f536
je 0x10002cd2
jmp 0x100018c7
mov eax, dword [ebp - 0xa4]
sub eax, 0xd88652b2
je 0x10004411
jmp 0x100018dd
mov eax, dword [ebp - 0xa4]
sub eax, 0xdbf2cfd1
je 0x10003f41
jmp 0x100018f3
mov eax, dword [ebp - 0xa4]
sub eax, 0xde8aa317
je 0x100036f6
jmp 0x10001909
mov eax, dword [ebp - 0xa4]
sub eax, 0xdf3de508
je 0x10003db2
jmp 0x1000191f
mov eax, dword [ebp - 0xa4]
sub eax, 0xe3409c8e
je 0x100028c9
jmp 0x10001935
mov eax, dword [ebp - 0xa4]
sub eax, 0xe3ca7cbf
je 0x100023d2
jmp 0x1000194b
mov eax, dword [ebp - 0xa4]
sub eax, 0xe4144999
je 0x10003419
jmp 0x10001961
mov eax, dword [ebp - 0xa4]
sub eax, 0xe5ea5566
je 0x1000439b
jmp 0x10001977
mov eax, dword [ebp - 0xa4]
sub eax, 0xe8ede967
je 0x10003992
jmp 0x1000198d
mov eax, dword [ebp - 0xa4]
sub eax, 0xea8f3293
je 0x100033ab
jmp 0x100019a3
mov eax, dword [ebp - 0xa4]
sub eax, 0xeaadc944
je 0x100024c9
jmp 0x100019b9
mov eax, dword [ebp - 0xa4]
sub eax, 0xedac4531
je 0x10002218
jmp 0x100019cf
mov eax, dword [ebp - 0xa4]
sub eax, 0xf773e19b
je 0x10002597
push eax
sub esp, 0x100
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
mov dword [ebp - 0x9c], 0x7da0528f
jmp 0x10004637
mov dword [ebp - 0x9c], 0x8be776d9
jmp 0x10004637
mov eax, dword [ebp - 0xa0]
push eax
mov ecx, esp
mov dword [ebp - 0x68], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x8c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x1c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.100101f0
add esp, 0xc
mov dword [ebp - 0x9c], 0x12d6a296
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
sub edx, 0x3c772d9f
sub edx, 1
add edx, 0x3c772d9f
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, 0xcb44a244
mov ecx, 0xad0e08b2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
mov edx, ecx
sub edx, 0x9d7469ac
sub edx, 1
add edx, 0x9d7469ac
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, 0xcb44a244
mov ecx, 0x477fe155
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
sub edx, 0x8d461d44
sub edx, 1
add edx, 0x8d461d44
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, 0xa58cf015
mov ecx, 0x1eb7049
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov dword [ebp - 0x9c], 0xa741924
jmp 0x10004637
mov eax, dword [ebp - 0x88]
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 - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x59], al
mov dword [ebp - 0x9c], 0xf773e19b
jmp 0x10004637
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
mov edx, ecx
add edx, 0xaa4632b
sub edx, 1
sub edx, 0xaa4632b
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, 0xdbf2cfd1
mov ecx, 0x29edf11f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
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 - 0x58], eax
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
add edx, 0xaf89826a
sub edx, 1
sub edx, 0xaf89826a
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, 0x16f28599
mov ecx, 0x1dce9b19
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x58]
mov dword [eax], ecx
mov dword [ebp - 0x9c], 0x8f850458
jmp 0x10004637
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
mov edx, ecx
sub edx, 0x5d406af5
sub edx, 1
add edx, 0x5d406af5
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, 0xcc5dae6
mov ecx, 0xe3409c8e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
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, 0xcd879253
mov ecx, 0x6713e000
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
add edx, 0x218374bb
sub edx, 1
sub edx, 0x218374bb
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, 0x6353c178
mov ecx, 0x96133d1b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
sub edx, 0x378c0974
sub edx, 1
add edx, 0x378c0974
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, 0x6353c178
mov ecx, 0xa6155b8d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov dword [ebp - 0x9c], 0xbb5fb01c
jmp 0x10004637
mov eax, dword [ebp - 0x54]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x4d], al
mov dword [ebp - 0x9c], 0x7479f682
jmp 0x10004637
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
sub edx, 0x94881571
sub edx, 1
add edx, 0x94881571
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, 0x599e489b
mov ecx, 0x5d009069
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
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, 0xdb8c5e2
mov ecx, 0xf6ffa49
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
mov edx, ecx
add edx, 0x57fc508c
sub edx, 1
sub edx, 0x57fc508c
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, 0xdb8c5e2
mov ecx, 0x5083a6c7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
sub edx, 0xdc8be204
sub edx, 1
add edx, 0xdc8be204
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, 0xe2cc03f
mov ecx, 0x3cc5e774
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
sub edx, 0x8ce171ee
sub edx, 1
add edx, 0x8ce171ee
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, 0x6c9a607d
mov ecx, 0x43f0fb52
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
add edx, 0x673daf5d
sub edx, 1
sub edx, 0x673daf5d
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, 0xe5ea5566
mov ecx, 0xbb875ad5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
sub edx, 0xab7962cc
sub edx, 1
add edx, 0xab7962cc
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, 0x361873e1
mov ecx, 0xb6dddc8a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [ebp - 0x80]
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 - 0x7c]
mov dword [eax], ecx
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
add edx, 0x9304d90a
sub edx, 1
sub edx, 0x9304d90a
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, 0x361873e1
mov ecx, 0xa9cc3ca8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov dword [ebp - 0x9c], 0xcc9b6b3e
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
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, 0xaa7e85c5
mov ecx, 0x74f3b842
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [ebp - 0x70]
movzx eax, word [eax]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x44], eax
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
mov edx, ecx
sub edx, 0x2a346536
sub edx, 1
add edx, 0x2a346536
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, 0x39f64285
mov ecx, 0xa15e239d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov dword [ebp - 0x9c], 0x59493ab
jmp 0x10004637
mov edx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x40]
mov eax, 0xaf890a5c
mov ecx, 0x41bdcc44
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
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, 0x2705816c
mov ecx, 0xe4144999
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [ebp - 0x38]
movzx edx, word [eax]
mov ecx, dword [ebp - 0x3c]
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]
movzx eax, word [eax]
imul edx, eax, 0x28
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x6c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1001a190
call fcn.10011180
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x31], al
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
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, 0x2705816c
mov ecx, 0x1358abb0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
mov edx, ecx
sub edx, 0x2129ed49
sub edx, 1
add edx, 0x2129ed49
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, 0xd88652b2
mov ecx, 0x784ae77d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
mov edx, ecx
sub edx, 0x29a95c7c
sub edx, 1
add edx, 0x29a95c7c
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, 0xb1d2517e
mov ecx, 0x3a86b402
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov dword [ebp - 0x9c], 0x96675d88
jmp 0x10004637
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x9c], 0x1dfd5e00
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
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, 0x10824228
mov ecx, 0xb2b20775
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
add edx, 0x83e5ca14
add edx, eax
sub edx, 0x83e5ca14
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x30]
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 - 0x64]
mov byte [eax], cl
mov edx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0xe89690a6
add edx, eax
add edx, 0xe89690a6
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add ecx, 0xccaf43c5
add ecx, eax
sub ecx, 0xccaf43c5
mov eax, dword [ebp - 0x6c]
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.10010350
add esp, 0xc
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x98]
mov eax, dword [ebp - 0x6c]
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 - 0x68]
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 - 0x64]
mov byte [eax], cl
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
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, 0x10824228
mov ecx, 0x1584c2d9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
add edx, 0x62ebcea8
sub edx, 1
sub edx, 0x62ebcea8
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, 0x43f58098
mov ecx, 0x262260b5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov dword [ebp - 0x9c], 0x1a05b22a
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
add edx, 0x43d6ded7
sub edx, 1
sub edx, 0x43d6ded7
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, 0x272d0940
mov ecx, 0x38f2a4fc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
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, 0x762c212a
mov ecx, 0x4522ec4f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x9c], 0x27bbde6f
jmp 0x10004637
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x90]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x9c], 0x26585723
jmp 0x10004637
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
mov edx, ecx
sub edx, 0xbe54b1fa
sub edx, 1
add edx, 0xbe54b1fa
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, 0x480d9592
mov ecx, 0xdf3de508
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov eax, dword [0x100718a8]
mov ecx, dword [0x100718a4]
mov edx, eax
add edx, 0x1280f0cf
sub edx, 1
sub edx, 0x1280f0cf
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, 0x480d9592
mov ecx, 0xc4a09fd4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000f5c0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x9c], 0x40bdf016
jmp 0x10004637
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
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, 0x9384615f
mov ecx, 0xa6f735ae
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov ecx, dword [ebp - 0x94]
mov edx, dword [ebp - 0x90]
lea eax, [ebp - 0x1c]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xc
call sub.KERNEL32.dll_K32GetModuleInformation
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
mov edx, ecx
sub edx, 0xb1ab02f
sub edx, 1
add edx, 0xb1ab02f
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, 0x9384615f
mov ecx, 0xbfe2ba15
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov dword [ebp - 0x9c], 0x1eb7049
jmp 0x10004637
mov dword [ebp - 0x9c], 0x88866ae2
jmp 0x10004637
mov eax, dword [ebp - 0x80]
mov ecx, dword [0x100718a8]
mov eax, dword [0x100718a4]
mov edx, ecx
add edx, 0x30fc9818
sub edx, 1
sub edx, 0x30fc9818
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, 0x3f35e246
mov ecx, 0x1b346f5a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x10004637
mov dword [ebp - 0x9c], 0xad0e08b2
jmp 0x10004637
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x9c], 0x6713e000
jmp 0x10004637
mov eax, dword [ebp - 0x4c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x9c], 0x1d5629ed
jmp 0x10004637
mov dword [ebp - 0x9c], 0xcf799237
jmp 0x10004637
mov ecx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov edx, dword [eax + 0x3c]
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 - 0x74]
mov dword [eax], ecx
mov dword [ebp - 0x9c], 0x74f3b842
jmp 0x10004637
mov eax, dword [ebp - 0x70]
mov word [eax], 0
mov dword [ebp - 0x9c], 0x12f9049d
jmp 0x10004637
mov dword [ebp - 0x9c], 0xcad7f5d9
jmp 0x10004637
mov eax, dword [ebp - 0x68]
mov dword [eax], 0
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x9c], 0x3a86b402
jmp 0x10004637
mov dword [ebp - 0x9c], 0x569103e6
jmp 0x10004637
mov ecx, dword [ebp - 0x94]
mov edx, dword [ebp - 0x90]
lea eax, [ebp - 0x1c]
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 - 0x9c], 0xa6f735ae
jmp 0x10004637
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
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 - 0x9c], 0x1aa87dbb
jmp 0x10004637
jmp 0x10001449