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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x9c
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa0], eax
mov eax, dword [0x1006d800]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x1006eb48]
mov eax, dword [0x1006eb44]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x96], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x95], al
mov dword [ebp - 0x9c], 0x5910cada
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xa4], eax
sub eax, 0x80164946
je 0x100026a7
jmp 0x1000128b
mov eax, dword [ebp - 0xa4]
sub eax, 0x81a4c5b4
je 0x100025d1
jmp 0x100012a1
mov eax, dword [ebp - 0xa4]
sub eax, 0x82677093
je 0x100027ad
jmp 0x100012b7
mov eax, dword [ebp - 0xa4]
sub eax, 0x87356db1
je 0x1000186b
jmp 0x100012cd
mov eax, dword [ebp - 0xa4]
sub eax, 0x8b0201af
je 0x1000264f
jmp 0x100012e3
mov eax, dword [ebp - 0xa4]
sub eax, 0x8b718b61
je 0x10001e7c
jmp 0x100012f9
mov eax, dword [ebp - 0xa4]
sub eax, 0x8e34d33b
je 0x100024c0
jmp 0x1000130f
mov eax, dword [ebp - 0xa4]
sub eax, 0xa0f3e7d6
je 0x10001fc3
jmp 0x10001325
mov eax, dword [ebp - 0xa4]
sub eax, 0xa6e22304
je 0x100025fe
jmp 0x1000133b
mov eax, dword [ebp - 0xa4]
sub eax, 0xab4525e5
je 0x100019f6
jmp 0x10001351
mov eax, dword [ebp - 0xa4]
sub eax, 0xac5bbe85
je 0x1000237f
jmp 0x10001367
mov eax, dword [ebp - 0xa4]
sub eax, 0xaf9b9043
je 0x10001dd2
jmp 0x1000137d
mov eax, dword [ebp - 0xa4]
sub eax, 0xafa95a7c
je 0x10001f80
jmp 0x10001393
mov eax, dword [ebp - 0xa4]
sub eax, 0xafae36d0
je 0x10002897
jmp 0x100013a9
mov eax, dword [ebp - 0xa4]
sub eax, 0xb194acd8
je 0x10001c3b
jmp 0x100013bf
mov eax, dword [ebp - 0xa4]
sub eax, 0xb973c810
je 0x10002860
jmp 0x100013d5
mov eax, dword [ebp - 0xa4]
sub eax, 0xc3c7d5dc
je 0x10002786
jmp 0x100013eb
mov eax, dword [ebp - 0xa4]
sub eax, 0xc47d6b6a
je 0x1000226f
jmp 0x10001401
mov eax, dword [ebp - 0xa4]
sub eax, 0xc9394139
je 0x10001991
jmp 0x10001417
mov eax, dword [ebp - 0xa4]
sub eax, 0xcc1c5ca0
je 0x10002370
jmp 0x1000142d
mov eax, dword [ebp - 0xa4]
sub eax, 0xce056df8
je 0x10001c1d
jmp 0x10001443
mov eax, dword [ebp - 0xa4]
sub eax, 0xcee33596
je 0x10002462
jmp 0x10001459
mov eax, dword [ebp - 0xa4]
sub eax, 0xd0022342
je 0x10001d7f
jmp 0x1000146f
mov eax, dword [ebp - 0xa4]
sub eax, 0xe5997da7
je 0x10002014
jmp 0x10001485
mov eax, dword [ebp - 0xa4]
sub eax, 0xe9aad82d
je 0x10001c4a
jmp 0x1000149b
mov eax, dword [ebp - 0xa4]
sub eax, 0xf514ae60
je 0x10002411
jmp 0x100014b1
mov eax, dword [ebp - 0xa4]
sub eax, 0xf8bf7ea7
je 0x10002774
jmp 0x100014c7
mov eax, dword [ebp - 0xa4]
sub eax, 0xfa889d31
je 0x10001e26
jmp 0x100014dd
mov eax, dword [ebp - 0xa4]
sub eax, 0xfbeab86e
je 0x10001aa7
jmp 0x100014f3
mov eax, dword [ebp - 0xa4]
sub eax, 0x109592e
je 0x100025e0
jmp 0x10001509
mov eax, dword [ebp - 0xa4]
sub eax, 0x5ae5840
je 0x10001a47
jmp 0x1000151f
mov eax, dword [ebp - 0xa4]
sub eax, 0x66e49b6
je 0x10002798
jmp 0x10001535
mov eax, dword [ebp - 0xa4]
sub eax, 0xe0ac814
je 0x100027f8
jmp 0x1000154b
mov eax, dword [ebp - 0xa4]
sub eax, 0x16704e62
je 0x10001d9d
jmp 0x10001561
mov eax, dword [ebp - 0xa4]
sub eax, 0x1b241c67
je 0x100026e7
jmp 0x10001577
mov eax, dword [ebp - 0xa4]
sub eax, 0x1b763db8
je 0x10001a98
jmp 0x1000158d
mov eax, dword [ebp - 0xa4]
sub eax, 0x28bed61e
je 0x100024b1
jmp 0x100015a3
mov eax, dword [ebp - 0xa4]
sub eax, 0x29daa2f2
je 0x10001ef2
jmp 0x100015b9
mov eax, dword [ebp - 0xa4]
sub eax, 0x2b45c7aa
je 0x10002698
jmp 0x100015cf
mov eax, dword [ebp - 0xa4]
sub eax, 0x2dccb163
je 0x10001c0e
jmp 0x100015e5
mov eax, dword [ebp - 0xa4]
sub eax, 0x313cb1cb
je 0x100021d0
jmp 0x100015fb
mov eax, dword [ebp - 0xa4]
sub eax, 0x33a8ffd5
je 0x10001db4
jmp 0x10001611
mov eax, dword [ebp - 0xa4]
sub eax, 0x3d5b3368
je 0x10001f71
jmp 0x10001627
mov eax, dword [ebp - 0xa4]
sub eax, 0x3f3a0663
je 0x10001968
jmp 0x1000163d
mov eax, dword [ebp - 0xa4]
sub eax, 0x3f47b2cd
je 0x10002851
jmp 0x10001653
mov eax, dword [ebp - 0xa4]
sub eax, 0x44dd626a
je 0x10001ae7
jmp 0x10001669
mov eax, dword [ebp - 0xa4]
sub eax, 0x4856753f
je 0x10002471
jmp 0x1000167f
mov eax, dword [ebp - 0xa4]
sub eax, 0x4d2f134b
je 0x10002107
jmp 0x10001695
mov eax, dword [ebp - 0xa4]
sub eax, 0x4ebca08b
je 0x10001977
jmp 0x100016ab
mov eax, dword [ebp - 0xa4]
sub eax, 0x50699322
je 0x100026d8
jmp 0x100016c1
mov eax, dword [ebp - 0xa4]
sub eax, 0x58c250d7
je 0x100020a7
jmp 0x100016d7
mov eax, dword [ebp - 0xa4]
sub eax, 0x5910cada
je 0x1000183c
jmp 0x100016ed
mov eax, dword [ebp - 0xa4]
sub eax, 0x5f892708
je 0x1000248a
jmp 0x10001703
mov eax, dword [ebp - 0xa4]
sub eax, 0x61c0b21e
je 0x10001d19
jmp 0x10001719
mov eax, dword [ebp - 0xa4]
sub eax, 0x62573064
je 0x10001fa5
jmp 0x1000172f
mov eax, dword [ebp - 0xa4]
sub eax, 0x6433fc94
je 0x100020b6
jmp 0x10001745
mov eax, dword [ebp - 0xa4]
sub eax, 0x6772182b
je 0x1000252e
jmp 0x1000175b
mov eax, dword [ebp - 0xa4]
sub eax, 0x6bbae2f3
je 0x10001de1
jmp 0x10001771
mov eax, dword [ebp - 0xa4]
sub eax, 0x6d3721f8
je 0x100026b8
jmp 0x10001787
mov eax, dword [ebp - 0xa4]
sub eax, 0x6e148316
je 0x10001b30
jmp 0x1000179d
mov eax, dword [ebp - 0xa4]
sub eax, 0x718bcc37
je 0x1000218b
jmp 0x100017b3
mov eax, dword [ebp - 0xa4]
sub eax, 0x72d33ee6
je 0x10001d70
jmp 0x100017c9
mov eax, dword [ebp - 0xa4]
sub eax, 0x763286a2
je 0x100023c0
jmp 0x100017df
mov eax, dword [ebp - 0xa4]
sub eax, 0x783782f0
je 0x100022c0
jmp 0x100017f5
mov eax, dword [ebp - 0xa4]
sub eax, 0x7a110634
je 0x10001e65
mov al, byte [ebp - 0x96]
mov cl, byte [ebp - 0x95]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x6d3721f8
mov ecx, 0x87356db1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov ecx, dword [ebp - 0xa0]
push eax
mov eax, esp
mov dword [ebp - 0x94], eax
push eax
mov eax, esp
mov dword [ebp - 0x90], eax
sub esp, 0xc
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
sub esp, 0x104
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
push eax
mov eax, esp
mov dword [ebp - 0x64], eax
push eax
mov eax, esp
mov dword [ebp - 0x60], eax
push eax
mov eax, esp
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x58], eax
mov ecx, dword [0x1006eb48]
mov eax, dword [0x1006eb44]
mov edx, ecx
sub edx, 0x2a61a3be
sub edx, 1
add edx, 0x2a61a3be
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, 0x6d3721f8
mov ecx, 0x3f3a0663
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x4ebca08b
jmp 0x100028a1
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x58]
mov dword [eax], ecx
mov dword [ebp - 0x9c], 0xc9394139
jmp 0x100028a1
mov eax, dword [ebp - 0x8c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.100109e0
add esp, 0xc
mov eax, dword [ebp - 0x94]
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 - 0x88]
mov dword [eax], ecx
mov edx, dword [ebp - 0x88]
mov eax, 0xab4525e5
mov ecx, 0xfbeab86e
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
mov edx, eax
add edx, 0x7eea68f1
sub edx, 1
sub edx, 0x7eea68f1
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, 0x50699322
mov ecx, 0x5ae5840
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
mov edx, eax
sub edx, 0x21a84ac9
sub edx, 1
add edx, 0x21a84ac9
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, 0x50699322
mov ecx, 0x1b763db8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x80164946
jmp 0x100028a1
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x90]
mov edx, dword [eax]
mov eax, dword [ebp - 0x8c]
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], 0x44dd626a
jmp 0x100028a1
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
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, 0x1b241c67
mov ecx, 0x6e148316
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x88]
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 eax, dword [ebp - 0x80]
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 - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x51], al
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
mov edx, eax
add edx, 0xb5559046
sub edx, 1
sub edx, 0xb5559046
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, 0x1b241c67
mov ecx, 0x2dccb163
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0xce056df8
jmp 0x100028a1
mov dl, byte [ebp - 0x51]
mov eax, 0xe9aad82d
mov ecx, 0xb194acd8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x80164946
jmp 0x100028a1
mov eax, dword [ebp - 0x7c]
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 ecx, eax
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x9c], 0x7fefdc6c
jmp 0x100028a1
mov eax, dword [ebp - 0x50]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x49], al
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
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, 0xf8bf7ea7
mov ecx, 0x72d33ee6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0xd0022342
jmp 0x100028a1
mov dl, byte [ebp - 0x49]
mov eax, 0x16704e62
mov ecx, 0x6bbae2f3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x9c], 0x33a8ffd5
jmp 0x100028a1
mov eax, dword [ebp - 0x48]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x9c], 0xaf9b9043
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x80164946
jmp 0x100028a1
mov eax, dword [ebp - 0x78]
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 dword [ebp - 0x44], eax
mov dword [ebp - 0x9c], 0xfa889d31
jmp 0x100028a1
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov edx, dword [eax + 0x3c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x6c]
mov dword [eax], ecx
mov dword [ebp - 0x9c], 0x7a110634
jmp 0x100028a1
mov ecx, dword [0x1006eb48]
mov eax, dword [0x1006eb44]
mov edx, ecx
sub edx, 0x9214131d
sub edx, 1
add edx, 0x9214131d
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, 0xc3c7d5dc
mov ecx, 0x29daa2f2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [ebp - 0x68]
movzx eax, word [eax]
mov dword [ebp - 0x40], eax
mov ecx, dword [0x1006eb48]
mov eax, dword [0x1006eb44]
mov edx, ecx
add edx, 0x95bd7500
sub edx, 1
sub edx, 0x95bd7500
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, 0xc3c7d5dc
mov ecx, 0x3d5b3368
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0xafa95a7c
jmp 0x100028a1
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
movzx ecx, word [eax + 6]
mov eax, dword [ebp - 0x40]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x39], al
mov dword [ebp - 0x9c], 0x62573064
jmp 0x100028a1
mov dl, byte [ebp - 0x39]
mov eax, 0x8e34d33b
mov ecx, 0xa0f3e7d6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
mov edx, eax
add edx, 0xdc68b4a0
sub edx, 1
sub edx, 0xdc68b4a0
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, 0x66e49b6
mov ecx, 0xe5997da7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
add eax, 4
add eax, 0x10
mov dword [ebp - 0x34], eax
mov ecx, dword [0x1006eb48]
mov eax, dword [0x1006eb44]
mov edx, ecx
add edx, 0xd1c57ce4
sub edx, 1
sub edx, 0xd1c57ce4
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, 0x66e49b6
mov ecx, 0x58c250d7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x6433fc94
jmp 0x100028a1
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
mov edx, eax
add edx, 0xd316eaa6
sub edx, 1
sub edx, 0xd316eaa6
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, 0x82677093
mov ecx, 0x4d2f134b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [ebp - 0x34]
movzx eax, word [eax]
mov ecx, dword [ebp - 0x38]
sub ecx, 0x9b3599a9
add ecx, eax
add ecx, 0x9b3599a9
mov eax, dword [ebp - 0x68]
movzx eax, word [eax]
imul edx, eax, 0x28
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x64]
mov dword [eax], ecx
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
mov edx, eax
sub edx, 0x99821e60
sub edx, 1
add edx, 0x99821e60
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, 0x82677093
mov ecx, 0x718bcc37
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x7f50d6f3
jmp 0x100028a1
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x84]
mov edx, dword [eax]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, edx
xor edx, edx
sub edx, esi
add eax, edx
xor edx, edx
sub edx, eax
mov eax, dword [ebp - 0x60]
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 - 0x5c]
mov byte [eax], cl
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x64]
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 - 0x2c], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x9c], 0xc47d6b6a
jmp 0x100028a1
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
mov edx, eax
sub edx, 0xb8f50ec2
sub edx, 1
add edx, 0xb8f50ec2
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, 0xe0ac814
mov ecx, 0x783782f0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
add ecx, 0xf4dd461b
add ecx, eax
sub ecx, 0xf4dd461b
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x2c]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10010b40
add esp, 0xc
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x64]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
add eax, 0xeccca367
add eax, ecx
sub eax, 0xeccca367
mov dword [ebp - 0x18], eax
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
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, 0xe0ac814
mov ecx, 0xcc1c5ca0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0xac5bbe85
jmp 0x100028a1
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x18]
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 - 0x5c]
mov byte [eax], cl
mov dword [ebp - 0x9c], 0x763286a2
jmp 0x100028a1
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
mov edx, eax
sub edx, 0x71fe4810
sub edx, 1
add edx, 0x71fe4810
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, 0x3f47b2cd
mov ecx, 0xf514ae60
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
mov edx, eax
add edx, 0x4326632
sub edx, 1
sub edx, 0x4326632
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, 0x3f47b2cd
mov ecx, 0xcee33596
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x4856753f
jmp 0x100028a1
mov eax, dword [ebp - 0x68]
mov ax, word [eax]
mov word [ebp - 0x12], ax
mov dword [ebp - 0x9c], 0x5f892708
jmp 0x100028a1
mov cx, word [ebp - 0x12]
add cx, 0x8278
add cx, 1
sub cx, 0x8278
mov eax, dword [ebp - 0x68]
mov word [eax], cx
mov dword [ebp - 0x9c], 0x28bed61e
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x8b718b61
jmp 0x100028a1
mov ecx, dword [0x1006eb48]
mov eax, dword [0x1006eb44]
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, 0xb973c810
mov ecx, 0x6772182b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov ecx, dword [0x1006eb48]
mov eax, dword [0x1006eb44]
mov edx, ecx
sub edx, 0xd474aaa
sub edx, 1
add edx, 0xd474aaa
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, 0xb973c810
mov ecx, 0x81a4c5b4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x109592e
jmp 0x100028a1
mov eax, dword [ebp - 0x10]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x9c], 0xa6e22304
jmp 0x100028a1
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
mov edx, eax
add edx, 0x6ac319af
sub edx, 1
sub edx, 0x6ac319af
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, 0xafae36d0
mov ecx, 0x8b0201af
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov eax, dword [0x1006eb48]
mov ecx, dword [0x1006eb44]
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, 0xafae36d0
mov ecx, 0x2b45c7aa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x9c], eax
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x80164946
jmp 0x100028a1
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000fde0
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0xa0]
push eax
mov eax, esp
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x9c], 0x87356db1
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x5ae5840
jmp 0x100028a1
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x88]
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 eax, dword [ebp - 0x80]
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 - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x9c], 0x6e148316
jmp 0x100028a1
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x9c], 0x61c0b21e
jmp 0x100028a1
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x9c], 0x29daa2f2
jmp 0x100028a1
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x9c], 0xe5997da7
jmp 0x100028a1
mov eax, dword [ebp - 0x34]
movzx eax, word [eax]
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x38]
add ecx, 0x3de333c6
add ecx, eax
sub ecx, 0x3de333c6
mov eax, dword [ebp - 0x68]
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 - 0x64]
mov dword [eax], ecx
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x9c], 0x4d2f134b
jmp 0x100028a1
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
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 - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x2c]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10010b40
add esp, 0xc
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x64]
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x9c], 0x783782f0
jmp 0x100028a1
mov dword [ebp - 0x9c], 0xf514ae60
jmp 0x100028a1
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x9c], 0x6772182b
jmp 0x100028a1
mov dword [ebp - 0x9c], 0x8b0201af
jmp 0x1000126f