Function at 0x10001320
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 [0x1006d200]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1a8], 0x642a9349
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1b0], eax
sub eax, 0x83b77cb7
je 0x10001c9c
jmp 0x10001365
mov eax, dword [ebp - 0x1b0]
sub eax, 0x84af201a
je 0x10002439
jmp 0x1000137b
mov eax, dword [ebp - 0x1b0]
sub eax, 0x858899b4
je 0x1000289e
jmp 0x10001391
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8851d333
je 0x1000276e
jmp 0x100013a7
mov eax, dword [ebp - 0x1b0]
sub eax, 0x88eacd96
je 0x100020d7
jmp 0x100013bd
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8c646369
je 0x10002858
jmp 0x100013d3
mov eax, dword [ebp - 0x1b0]
sub eax, 0x8df56aa8
je 0x100026dc
jmp 0x100013e9
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9315823a
je 0x100027cd
jmp 0x100013ff
mov eax, dword [ebp - 0x1b0]
sub eax, 0x941e8b45
je 0x100027f4
jmp 0x10001415
mov eax, dword [ebp - 0x1b0]
sub eax, 0x9a29111b
je 0x100019e1
jmp 0x1000142b
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa780fc8c
je 0x10002296
jmp 0x10001441
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa7810637
je 0x100025d3
jmp 0x10001457
mov eax, dword [ebp - 0x1b0]
sub eax, 0xa9142cdb
je 0x10002725
jmp 0x1000146d
mov eax, dword [ebp - 0x1b0]
sub eax, 0xb7b1a11b
je 0x10001cbf
jmp 0x10001483
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc10316b4
je 0x10001f26
jmp 0x10001499
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc3819200
je 0x10001b76
jmp 0x100014af
mov eax, dword [ebp - 0x1b0]
sub eax, 0xc4aa695a
je 0x10001b1f
jmp 0x100014c5
mov eax, dword [ebp - 0x1b0]
sub eax, 0xccf688e6
je 0x10001a66
jmp 0x100014db
mov eax, dword [ebp - 0x1b0]
sub eax, 0xce83b479
je 0x10001e0d
jmp 0x100014f1
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd31c7487
je 0x10002287
jmp 0x10001507
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd71b51ac
je 0x10001afe
jmp 0x1000151d
mov eax, dword [ebp - 0x1b0]
sub eax, 0xdb9381ef
je 0x10001fba
jmp 0x10001533
mov eax, dword [ebp - 0x1b0]
sub eax, 0xdfa17ec5
je 0x100026cd
jmp 0x10001549
mov eax, dword [ebp - 0x1b0]
sub eax, 0xee664184
je 0x10002190
jmp 0x1000155f
mov eax, dword [ebp - 0x1b0]
sub eax, 0xef812c9c
je 0x10001df2
jmp 0x10001575
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf046d707
je 0x10001d10
jmp 0x1000158b
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf8eeb1ca
je 0x10001e83
jmp 0x100015a1
mov eax, dword [ebp - 0x1b0]
sub eax, 0x68ce9c9
je 0x10002645
jmp 0x100015b7
mov eax, dword [ebp - 0x1b0]
sub eax, 0xd3383e5
je 0x100022ce
jmp 0x100015cd
mov eax, dword [ebp - 0x1b0]
sub eax, 0xe6a2f78
je 0x10001d86
jmp 0x100015e3
mov eax, dword [ebp - 0x1b0]
sub eax, 0xf3855a9
je 0x1000216f
jmp 0x100015f9
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1088307d
je 0x100028ad
jmp 0x1000160f
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1238a12b
je 0x10001b93
jmp 0x10001625
mov eax, dword [ebp - 0x1b0]
sub eax, 0x162e54c4
je 0x100023e8
jmp 0x1000163b
mov eax, dword [ebp - 0x1b0]
sub eax, 0x197fdd9e
je 0x100025f4
jmp 0x10001651
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1f5a7d6b
je 0x10002780
jmp 0x10001667
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1f856fbd
je 0x100021fe
jmp 0x1000167d
mov eax, dword [ebp - 0x1b0]
sub eax, 0x1fd69284
je 0x10001dc2
jmp 0x10001693
mov eax, dword [ebp - 0x1b0]
sub eax, 0x26b179d3
je 0x100024dc
jmp 0x100016a9
mov eax, dword [ebp - 0x1b0]
sub eax, 0x316e1139
je 0x10001fe0
jmp 0x100016bf
mov eax, dword [ebp - 0x1b0]
sub eax, 0x349c1b00
je 0x10001f35
jmp 0x100016d5
mov eax, dword [ebp - 0x1b0]
sub eax, 0x3996d7cf
je 0x10002561
jmp 0x100016eb
mov eax, dword [ebp - 0x1b0]
sub eax, 0x418a28c2
je 0x1000200a
jmp 0x10001701
mov eax, dword [ebp - 0x1b0]
sub eax, 0x427d81c7
je 0x10001de3
jmp 0x10001717
mov eax, dword [ebp - 0x1b0]
sub eax, 0x454f9a3b
je 0x100028ef
jmp 0x1000172d
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4618d9fb
je 0x10002803
jmp 0x10001743
mov eax, dword [ebp - 0x1b0]
sub eax, 0x49c567f9
je 0x1000248a
jmp 0x10001759
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4ae52824
je 0x100025c4
jmp 0x1000176f
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4b40ca88
je 0x100019f0
jmp 0x10001785
mov eax, dword [ebp - 0x1b0]
sub eax, 0x4ba7d414
je 0x10001da7
jmp 0x1000179b
mov eax, dword [ebp - 0x1b0]
sub eax, 0x524f3d6a
je 0x10001c30
jmp 0x100017b1
mov eax, dword [ebp - 0x1b0]
sub eax, 0x5721bb77
je 0x10001934
jmp 0x100017c7
mov eax, dword [ebp - 0x1b0]
sub eax, 0x58dd7293
je 0x10001c3f
jmp 0x100017dd
mov eax, dword [ebp - 0x1b0]
sub eax, 0x5bf5b06b
je 0x100024b6
jmp 0x100017f3
mov eax, dword [ebp - 0x1b0]
sub eax, 0x5f0a603e
je 0x10001f6e
jmp 0x10001809
mov eax, dword [ebp - 0x1b0]
sub eax, 0x642a9349
je 0x100018be
jmp 0x1000181f
mov eax, dword [ebp - 0x1b0]
sub eax, 0x6591d80d
je 0x10002061
jmp 0x10001835
mov eax, dword [ebp - 0x1b0]
sub eax, 0x68c8b379
je 0x10002499
jmp 0x1000184b
mov eax, dword [ebp - 0x1b0]
sub eax, 0x6df5df8d
je 0x10001b2e
jmp 0x10001861
mov eax, dword [ebp - 0x1b0]
sub eax, 0x6ed2b86b
je 0x10001f9c
jmp 0x10001877
mov eax, dword [ebp - 0x1b0]
sub eax, 0x7239abe4
je 0x10002883
jmp 0x1000188d
mov eax, dword [ebp - 0x1b0]
sub eax, 0x7a32d57d
je 0x100028ce
jmp 0x100018a3
mov eax, dword [ebp - 0x1b0]
sub eax, 0x7d45185f
je 0x100024eb
jmp 0x100018b9
jmp 0x100028f9
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
mov edx, ecx
sub edx, 0xca6970ef
sub edx, 1
add edx, 0xca6970ef
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, 0x1f5a7d6b
mov ecx, 0x5721bb77
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov eax, dword [ebp - 0x1ac]
push eax
mov ecx, esp
mov dword [ebp - 0x178], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x174], ecx
mov dword [ebp - 0x17c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x180], 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.1000f8e0
add esp, 0xc
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x170], eax
mov eax, dword [0x1006e548]
mov ecx, dword [0x1006e544]
mov edx, eax
sub edx, 0x258c0733
sub edx, 1
add edx, 0x258c0733
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, 0x1f5a7d6b
mov ecx, 0x9a29111b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0x4b40ca88
jmp 0x100028f9
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
mov edx, ecx
add edx, 0x9e287d1c
sub edx, 1
sub edx, 0x9e287d1c
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, 0x9315823a
mov ecx, 0xccf688e6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov eax, dword [ebp - 0x170]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x184], eax
cmp dword [ebp - 0x184], 0
setne al
and al, 1
mov byte [ebp - 0x169], al
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
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, 0x9315823a
mov ecx, 0xd71b51ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dl, byte [ebp - 0x169]
mov eax, 0xc4aa695a
mov ecx, 0x6df5df8d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0x8df56aa8
jmp 0x100028f9
mov ecx, dword [ebp - 0x184]
mov edx, dword [ebp - 0x180]
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
lea eax, [ebp - 0x120]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x1a8], 0xc3819200
jmp 0x100028f9
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x1a8], 0x1238a12b
jmp 0x100028f9
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x188], eax
lea eax, [ebp - 0x114]
mov ecx, dword [ebp - 0x184]
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 - 0x114]
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 - 0x18c], eax
mov edx, 0xffffffff
mov eax, 0x58dd7293
mov ecx, 0x524f3d6a
cmp dword [ebp - 0x18c], edx
cmove eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0x8df56aa8
jmp 0x100028f9
mov eax, dword [ebp - 0x18c]
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 - 0x190], eax
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x1a8], 0x83b77cb7
jmp 0x100028f9
mov eax, dword [ebp - 0x160]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x159], al
mov dword [ebp - 0x1a8], 0xb7b1a11b
jmp 0x100028f9
mov eax, dword [0x1006e548]
mov ecx, dword [0x1006e544]
mov edx, eax
add edx, 0x9daaae3a
sub edx, 1
sub edx, 0x9daaae3a
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, 0x941e8b45
mov ecx, 0xf046d707
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
mov edx, ecx
sub edx, 0x6f025299
sub edx, 1
add edx, 0x6f025299
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, 0x941e8b45
mov ecx, 0xe6a2f78
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dl, byte [ebp - 0x159]
mov eax, 0x4ba7d414
mov ecx, 0xef812c9c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1a8], 0x1fd69284
jmp 0x100028f9
mov eax, dword [ebp - 0x158]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0x427d81c7
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0x8df56aa8
jmp 0x100028f9
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1a8], 0xce83b479
jmp 0x100028f9
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
mov edx, ecx
add edx, 0x79ee185
sub edx, 1
sub edx, 0x79ee185
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, 0x4618d9fb
mov ecx, 0xf8eeb1ca
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov eax, dword [ebp - 0x154]
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 - 0x194], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x150], eax
mov eax, dword [0x1006e548]
mov ecx, dword [0x1006e544]
mov edx, eax
sub edx, 0x2af085b5
sub edx, 1
add edx, 0x2af085b5
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, 0x4618d9fb
mov ecx, 0xc10316b4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0x349c1b00
jmp 0x100028f9
mov eax, dword [ebp - 0x150]
mov ecx, dword [ebp - 0x198]
mov ecx, dword [ecx + 0x3c]
sub eax, 0x8f6dba84
add eax, ecx
add eax, 0x8f6dba84
mov dword [ebp - 0x19c], eax
mov word [ebp - 0x19e], 0
mov dword [ebp - 0x1a8], 0x5f0a603e
jmp 0x100028f9
movzx eax, word [ebp - 0x19e]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x19c]
add eax, 4
add eax, 2
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x1a8], 0x6ed2b86b
jmp 0x100028f9
mov eax, dword [ebp - 0x148]
movzx eax, word [eax]
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x1a8], 0xdb9381ef
jmp 0x100028f9
mov edx, dword [ebp - 0x14c]
mov esi, dword [ebp - 0x144]
mov eax, 0x7d45185f
mov ecx, 0x316e1139
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov eax, dword [ebp - 0x19c]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x18
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x1a8], 0x418a28c2
jmp 0x100028f9
mov eax, dword [ebp - 0x19c]
movzx edx, word [eax + 0x14]
mov eax, dword [ebp - 0x140]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
movzx ecx, word [ebp - 0x19e]
imul edx, ecx, 0x28
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x1a4], eax
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x1a8], 0x6591d80d
jmp 0x100028f9
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
mov edx, ecx
add edx, 0x580940f2
sub edx, 1
sub edx, 0x580940f2
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, 0x8c646369
mov ecx, 0x88eacd96
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov ecx, dword [ebp - 0x13c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1001b3b0
call fcn.10011c50
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x135], al
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
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, 0x8c646369
mov ecx, 0xf3855a9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dl, byte [ebp - 0x135]
mov eax, 0xee664184
mov ecx, 0x162e54c4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
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, 0x7239abe4
mov ecx, 0x1f856fbd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov eax, dword [ebp - 0x178]
mov dword [eax], 0
mov eax, dword [ebp - 0x1a4]
add eax, 8
mov dword [ebp - 0x134], eax
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
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, 0x7239abe4
mov ecx, 0xd31c7487
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0xa780fc8c
jmp 0x100028f9
mov eax, dword [ebp - 0x134]
mov eax, dword [eax]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1a4]
add eax, 0xc
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x1a8], 0xd3383e5
jmp 0x100028f9
mov eax, dword [ebp - 0x128]
mov eax, dword [eax]
mov edx, dword [ebp - 0x12c]
sub edx, 0xe0372be4
add edx, eax
add edx, 0xe0372be4
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x130]
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 edx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x1a4]
mov eax, dword [eax + 0xc]
add edx, 0x498db8f8
add edx, eax
sub edx, 0x498db8f8
mov ecx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x1a4]
mov eax, dword [eax + 0xc]
sub ecx, 0xa4f19426
add ecx, eax
add ecx, 0xa4f19426
mov eax, dword [ebp - 0x1a4]
mov eax, dword [eax + 8]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1000fa40
add esp, 0xc
mov eax, dword [ebp - 0x178]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x1a4]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x188]
mov eax, dword [ebp - 0x1a4]
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], 0x162e54c4
jmp 0x100028f9
mov eax, dword [0x1006e548]
mov ecx, dword [0x1006e544]
mov edx, eax
add edx, 0x5c3b7cb4
sub edx, 1
sub edx, 0x5c3b7cb4
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, 0x858899b4
mov ecx, 0x84af201a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov eax, dword [0x1006e548]
mov ecx, dword [0x1006e544]
mov edx, eax
add edx, 0xe23a9e30
sub edx, 1
sub edx, 0xe23a9e30
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, 0x858899b4
mov ecx, 0x49c567f9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0x68c8b379
jmp 0x100028f9
mov ax, word [ebp - 0x19e]
mov word [ebp - 0x122], ax
mov dword [ebp - 0x1a8], 0x5bf5b06b
jmp 0x100028f9
mov ax, word [ebp - 0x122]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x19e], ax
mov dword [ebp - 0x1a8], 0x26b179d3
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0x5f0a603e
jmp 0x100028f9
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
mov edx, ecx
sub edx, 0x22db8118
sub edx, 1
add edx, 0x22db8118
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, 0x1088307d
mov ecx, 0x3996d7cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov eax, dword [ebp - 0x18c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1006e548]
mov ecx, dword [0x1006e544]
mov edx, eax
sub edx, 0xa0b7c82b
sub edx, 1
add edx, 0xa0b7c82b
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, 0x1088307d
mov ecx, 0x4ae52824
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0xa7810637
jmp 0x100028f9
mov eax, dword [ebp - 0x190]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0x197fdd9e
jmp 0x100028f9
mov eax, dword [0x1006e548]
mov ecx, dword [0x1006e544]
mov edx, eax
add edx, 0x109dcc60
sub edx, 1
sub edx, 0x109dcc60
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, 0x7a32d57d
mov ecx, 0x68ce9c9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x1006e548]
mov eax, dword [0x1006e544]
mov edx, ecx
add edx, 0xbc18b6a9
sub edx, 1
sub edx, 0xbc18b6a9
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, 0x7a32d57d
mov ecx, 0xdfa17ec5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0x8df56aa8
jmp 0x100028f9
mov eax, dword [0x1006e548]
mov ecx, dword [0x1006e544]
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, 0x454f9a3b
mov ecx, 0xa9142cdb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov eax, dword [0x1006e548]
mov ecx, dword [0x1006e544]
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, 0x454f9a3b
mov ecx, 0x8851d333
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a8], eax
jmp 0x100028f9
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000ece0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x17c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x180], 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.1000f8e0
add esp, 0xc
mov dword [ebp - 0x1a8], 0x5721bb77
jmp 0x100028f9
mov eax, dword [ebp - 0x170]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x184], eax
mov dword [ebp - 0x1a8], 0xccf688e6
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0xf046d707
jmp 0x100028f9
mov eax, dword [ebp - 0x154]
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 - 0x194], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x1a8], 0xf8eeb1ca
jmp 0x100028f9
mov ecx, dword [ebp - 0x13c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1001b3b0
call fcn.10011c50
add esp, 8
mov dword [ebp - 0x1a8], 0x88eacd96
jmp 0x100028f9
mov eax, dword [ebp - 0x178]
mov dword [eax], 0
mov dword [ebp - 0x1a8], 0x1f856fbd
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0x84af201a
jmp 0x100028f9
mov eax, dword [ebp - 0x18c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0x3996d7cf
jmp 0x100028f9
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a8], 0x68ce9c9
jmp 0x100028f9
mov dword [ebp - 0x1a8], 0xa9142cdb
jmp 0x10001349