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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0xbc
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc0], eax
mov eax, dword [0x1006b404]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
mov edx, ecx
add edx, 0x39b3b85f
sub edx, 1
sub edx, 0x39b3b85f
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0xb6], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0xb5], al
mov dword [ebp - 0xbc], 0xfd3a55b4
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0xc4], eax
sub eax, 0x81d3060d
je 0x10002ac7
jmp 0x100017a3
mov eax, dword [ebp - 0xc4]
sub eax, 0x8322a036
je 0x100034d8
jmp 0x100017b9
mov eax, dword [ebp - 0xc4]
sub eax, 0x850395cb
je 0x100041e2
jmp 0x100017cf
mov eax, dword [ebp - 0xc4]
sub eax, 0x86b7f6d8
je 0x100046c6
jmp 0x100017e5
mov eax, dword [ebp - 0xc4]
sub eax, 0x885527bd
je 0x10004b6e
jmp 0x100017fb
mov eax, dword [ebp - 0xc4]
sub eax, 0x8aa7ab6f
je 0x10003f40
jmp 0x10001811
mov eax, dword [ebp - 0xc4]
sub eax, 0x8b49a923
je 0x10004fa7
jmp 0x10001827
mov eax, dword [ebp - 0xc4]
sub eax, 0x8b65535a
je 0x1000499d
jmp 0x1000183d
mov eax, dword [ebp - 0xc4]
sub eax, 0x8c044d73
je 0x10003462
jmp 0x10001853
mov eax, dword [ebp - 0xc4]
sub eax, 0x8c04e613
je 0x10005309
jmp 0x10001869
mov eax, dword [ebp - 0xc4]
sub eax, 0x8cd31786
je 0x100056d6
jmp 0x1000187f
mov eax, dword [ebp - 0xc4]
sub eax, 0x8ec05dd5
je 0x1000375c
jmp 0x10001895
mov eax, dword [ebp - 0xc4]
sub eax, 0x8eff51b7
je 0x1000580d
jmp 0x100018ab
mov eax, dword [ebp - 0xc4]
sub eax, 0x8fdd7e40
je 0x10003f4f
jmp 0x100018c1
mov eax, dword [ebp - 0xc4]
sub eax, 0x916f1ca7
je 0x1000481f
jmp 0x100018d7
mov eax, dword [ebp - 0xc4]
sub eax, 0x91f73491
je 0x10003546
jmp 0x100018ed
mov eax, dword [ebp - 0xc4]
sub eax, 0x96410786
je 0x10004530
jmp 0x10001903
mov eax, dword [ebp - 0xc4]
sub eax, 0x970ac4bd
je 0x100040f7
jmp 0x10001919
mov eax, dword [ebp - 0xc4]
sub eax, 0x97dcd5a7
je 0x10004e54
jmp 0x1000192f
mov eax, dword [ebp - 0xc4]
sub eax, 0x9a28719d
je 0x10002d1f
jmp 0x10001945
mov eax, dword [ebp - 0xc4]
sub eax, 0x9b05e131
je 0x100031d1
jmp 0x1000195b
mov eax, dword [ebp - 0xc4]
sub eax, 0xa048008e
je 0x10005718
jmp 0x10001971
mov eax, dword [ebp - 0xc4]
sub eax, 0xa120cb18
je 0x10005b09
jmp 0x10001987
mov eax, dword [ebp - 0xc4]
sub eax, 0xa18a1903
je 0x1000462a
jmp 0x1000199d
mov eax, dword [ebp - 0xc4]
sub eax, 0xa256909c
je 0x10002b18
jmp 0x100019b3
mov eax, dword [ebp - 0xc4]
sub eax, 0xa39b3af8
je 0x1000408b
jmp 0x100019c9
mov eax, dword [ebp - 0xc4]
sub eax, 0xa7d88758
je 0x1000407c
jmp 0x100019df
mov eax, dword [ebp - 0xc4]
sub eax, 0xa87a1c55
je 0x1000537f
jmp 0x100019f5
mov eax, dword [ebp - 0xc4]
sub eax, 0xacf441d4
je 0x10004e17
jmp 0x10001a0b
mov eax, dword [ebp - 0xc4]
sub eax, 0xaf96a0ec
je 0x10003cd4
jmp 0x10001a21
mov eax, dword [ebp - 0xc4]
sub eax, 0xb069a184
je 0x100054c0
jmp 0x10001a37
mov eax, dword [ebp - 0xc4]
sub eax, 0xb1044719
je 0x10004c84
jmp 0x10001a4d
mov eax, dword [ebp - 0xc4]
sub eax, 0xb21ac5e0
je 0x10004c75
jmp 0x10001a63
mov eax, dword [ebp - 0xc4]
sub eax, 0xb40f89e9
je 0x100050c9
jmp 0x10001a79
mov eax, dword [ebp - 0xc4]
sub eax, 0xb4308cf9
je 0x10002954
jmp 0x10001a8f
mov eax, dword [ebp - 0xc4]
sub eax, 0xb91c6ce0
je 0x10005120
jmp 0x10001aa5
mov eax, dword [ebp - 0xc4]
sub eax, 0xb9beb126
je 0x10002c8e
jmp 0x10001abb
mov eax, dword [ebp - 0xc4]
sub eax, 0xbcf65aff
je 0x1000579b
jmp 0x10001ad1
mov eax, dword [ebp - 0xc4]
sub eax, 0xc02dc6ff
je 0x10003eef
jmp 0x10001ae7
mov eax, dword [ebp - 0xc4]
sub eax, 0xc221b42a
je 0x10002b69
jmp 0x10001afd
mov eax, dword [ebp - 0xc4]
sub eax, 0xc39f9b54
je 0x100051ec
jmp 0x10001b13
mov eax, dword [ebp - 0xc4]
sub eax, 0xc3e3fed0
je 0x100037ec
jmp 0x10001b29
mov eax, dword [ebp - 0xc4]
sub eax, 0xc5108fe5
je 0x10004462
jmp 0x10001b3f
mov eax, dword [ebp - 0xc4]
sub eax, 0xc5ddfd1f
je 0x10003e62
jmp 0x10001b55
mov eax, dword [ebp - 0xc4]
sub eax, 0xc66d8d63
je 0x1000314a
jmp 0x10001b6b
mov eax, dword [ebp - 0xc4]
sub eax, 0xcab17cb6
je 0x100044df
jmp 0x10001b81
mov eax, dword [ebp - 0xc4]
sub eax, 0xcc4d1658
je 0x10005709
jmp 0x10001b97
mov eax, dword [ebp - 0xc4]
sub eax, 0xcd4ead72
je 0x1000358f
jmp 0x10001bad
mov eax, dword [ebp - 0xc4]
sub eax, 0xd0a039a5
je 0x10003652
jmp 0x10001bc3
mov eax, dword [ebp - 0xc4]
sub eax, 0xd3006fd2
je 0x100031c2
jmp 0x10001bd9
mov eax, dword [ebp - 0xc4]
sub eax, 0xd4148624
je 0x1000520a
jmp 0x10001bef
mov eax, dword [ebp - 0xc4]
sub eax, 0xd70340be
je 0x1000339b
jmp 0x10001c05
mov eax, dword [ebp - 0xc4]
sub eax, 0xd7d54edf
je 0x100039e2
jmp 0x10001c1b
mov eax, dword [ebp - 0xc4]
sub eax, 0xd9635946
je 0x100057b9
jmp 0x10001c31
mov eax, dword [ebp - 0xc4]
sub eax, 0xddc244b8
je 0x10004191
jmp 0x10001c47
mov eax, dword [ebp - 0xc4]
sub eax, 0xde3acd92
je 0x10003931
jmp 0x10001c5d
mov eax, dword [ebp - 0xc4]
sub eax, 0xe0b3f41e
je 0x10002e81
jmp 0x10001c73
mov eax, dword [ebp - 0xc4]
sub eax, 0xe247d410
je 0x100059af
jmp 0x10001c89
mov eax, dword [ebp - 0xc4]
sub eax, 0xe401aa49
je 0x100030a6
jmp 0x10001c9f
mov eax, dword [ebp - 0xc4]
sub eax, 0xe80f7930
je 0x10002f6f
jmp 0x10001cb5
mov eax, dword [ebp - 0xc4]
sub eax, 0xe89cff3f
je 0x100046b7
jmp 0x10001ccb
mov eax, dword [ebp - 0xc4]
sub eax, 0xe9636dc4
je 0x100055f3
jmp 0x10001ce1
mov eax, dword [ebp - 0xc4]
sub eax, 0xeae56638
je 0x100038ea
jmp 0x10001cf7
mov eax, dword [ebp - 0xc4]
sub eax, 0xf03f7886
je 0x10002791
jmp 0x10001d0d
mov eax, dword [ebp - 0xc4]
sub eax, 0xf107e479
je 0x1000374d
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
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, 0x1cf63a57
mov ecx, 0x3399aff5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
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, 0x34203aae
mov ecx, 0x480de38d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
sub edx, 0x457953a0
sub edx, 1
add edx, 0x457953a0
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, 0x4748a75f
mov ecx, 0xa256909c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
sub edx, 0x26a7fdbf
sub edx, 1
add edx, 0x26a7fdbf
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, 0x4748a75f
mov ecx, 0xc221b42a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x7d76b47b
jmp 0x10005b20
mov eax, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0xac]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10012c60
add esp, 0xc
mov dword [ebp - 0xbc], 0x1719d004
jmp 0x10005b20
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
mov edx, ecx
add edx, 0x77f939fc
sub edx, 1
sub edx, 0x77f939fc
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, 0x39183fd7
mov ecx, 0x4abc72df
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [ebp - 0xb4]
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 - 0xa8]
mov dword [eax], ecx
mov eax, dword [ebp - 0xa8]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x71], al
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
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, 0x5d353258
mov ecx, 0x191c0f86
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dl, byte [ebp - 0x71]
mov eax, 0x2a844461
mov ecx, 0x25f7b82b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0xbc], 0x1c6ef70a
jmp 0x10005b20
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x68]
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 - 0xa0]
mov dword [ebp - 0x64], eax
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
add edx, 0x6356d237
sub edx, 1
sub edx, 0x6356d237
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, 0x1af93cd8
mov ecx, 0xd3006fd2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x9b05e131
jmp 0x10005b20
mov eax, dword [ebp - 0x64]
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 - 0x9c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0xbc], 0x363651cc
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
sub edx, 0x1f1e3cab
sub edx, 1
add edx, 0x1f1e3cab
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, 0x4858726d
mov ecx, 0x17895560
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
mov edx, ecx
add edx, 0xc6a7a638
sub edx, 1
sub edx, 0xc6a7a638
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, 0xb40f89e9
mov ecx, 0x8322a036
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
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, 0x8cd31786
mov ecx, 0x91f73491
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
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, 0x8cd31786
mov ecx, 0xcd4ead72
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x19b015b6
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
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, 0x34f7c439
mov ecx, 0xfb70b751
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x54]
mov dword [eax], ecx
mov dword [ebp - 0xbc], 0x3dda6086
jmp 0x10005b20
mov eax, dword [ebp - 0x98]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
add edx, 0xf67ca8cf
sub edx, 1
sub edx, 0xf67ca8cf
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, 0xb91c6ce0
mov ecx, 0x6e30396f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x6f453983
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
add edx, 0xf44e39ff
sub edx, 1
sub edx, 0xf44e39ff
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, 0xc39f9b54
mov ecx, 0x43442479
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
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, 0xcc4d1658
mov ecx, 0x1ae59f33
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
mov edx, ecx
sub edx, 0x16667f57
sub edx, 1
add edx, 0x16667f57
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, 0x7723baf8
mov ecx, 0x56031e91
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov edx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x48]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x44], eax
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
mov edx, ecx
add edx, 0x534dfb0e
sub edx, 1
sub edx, 0x534dfb0e
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, 0xbcf65aff
mov ecx, 0xc02dc6ff
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
sub edx, 0xd1c9f53b
sub edx, 1
add edx, 0xd1c9f53b
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, 0xd4148624
mov ecx, 0x8aa7ab6f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x8fdd7e40
jmp 0x10005b20
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x8c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x88]
mov word [eax], 0
mov dword [ebp - 0xbc], 0x29917dd9
jmp 0x10005b20
mov dword [ebp - 0xbc], 0xa39b3af8
jmp 0x10005b20
mov ax, word [ebp - 0x3c]
movzx ecx, ax
mov eax, dword [ebp - 0x40]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x39], al
mov dword [ebp - 0xbc], 0x5abc02a0
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
sub edx, 0xd5ad8b0d
sub edx, 1
add edx, 0xd5ad8b0d
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, 0x10e2d489
mov ecx, 0x5ed8a79f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
sub edx, 0xf3b27214
sub edx, 1
add edx, 0xf3b27214
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, 0x24ed499d
mov ecx, 0x850395cb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dl, byte [ebp - 0x39]
mov eax, 0x77c3000a
mov ecx, 0x72a7bebb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x1c6c42bc
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
sub edx, 0xe785c49c
sub edx, 1
add edx, 0xe785c49c
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, 0xf920e61a
mov ecx, 0x96410786
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
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, 0xf920e61a
mov ecx, 0x7a9d5c12
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [ebp - 0x80]
mov dword [eax], 0
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
add eax, 8
mov dword [ebp - 0x2c], eax
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
mov edx, ecx
add edx, 0xc2663177
sub edx, 1
sub edx, 0xc2663177
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, 0x8eff51b7
mov ecx, 0xe89cff3f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x86b7f6d8
jmp 0x10005b20
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
mov edx, ecx
add edx, 0xe6ade832
sub edx, 1
sub edx, 0xe6ade832
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, 0xf9c30833
mov ecx, 0x7b0296db
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xa4]
mov edx, dword [eax]
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub edx, eax
mov eax, dword [ebp - 0x80]
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 - 0x7c]
mov byte [eax], cl
mov eax, dword [ebp - 0xa4]
mov edx, dword [eax]
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
sub edx, eax
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add ecx, 0xc9369b5
add ecx, eax
sub ecx, 0xc9369b5
mov eax, dword [ebp - 0x84]
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.10012dc0
add esp, 0xc
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0xa4]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
add eax, 0xc
mov dword [ebp - 0x1c], eax
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
sub edx, 0xb9e6fd78
sub edx, 1
add edx, 0xb9e6fd78
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, 0x6d2007b5
mov ecx, 0x58f8ab4e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
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, 0xf9b49544
mov ecx, 0x1a6df78a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
add edx, 0x870b3e6b
sub edx, 1
sub edx, 0x870b3e6b
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, 0x4e9e582e
mov ecx, 0xfc37edfd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dword [ebp - 0xbc], 0xb1044719
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
sub edx, 0x7cd80647
sub edx, 1
add edx, 0x7cd80647
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, 0x41891816
mov ecx, 0x53b5b18c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x29917dd9
jmp 0x10005b20
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xb0]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xbc], 0x4a0a69f6
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x7b37479b
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x8c044d73
jmp 0x10005b20
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
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, 0xe247d410
mov ecx, 0x18202e58
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [ebp - 0x4c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xbc], 0x43442479
jmp 0x10005b20
mov eax, dword [0x1006c6a8]
mov ecx, dword [0x1006c6a4]
mov edx, eax
sub edx, 0xfcf422ca
sub edx, 1
add edx, 0xfcf422ca
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, 0x25fffdc9
mov ecx, 0x7b96560e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
mov edx, ecx
sub edx, 0xa09b886f
sub edx, 1
add edx, 0xa09b886f
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, 0x201055f3
mov ecx, 0xa87a1c55
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xa4]
mov edx, dword [eax]
mov eax, dword [ebp - 0x84]
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 - 0x80]
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 - 0x7c]
mov byte [eax], cl
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov edx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor edx, edx
sub edx, eax
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, esi
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x84]
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.10012dc0
add esp, 0xc
mov eax, dword [ebp - 0x80]
mov eax, dword [ebp - 0x84]
mov eax, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x84]
mov ecx, dword [0x1006c6a8]
mov eax, dword [0x1006c6a4]
mov edx, ecx
sub edx, 0x4508f5a1
sub edx, 1
add edx, 0x4508f5a1
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, 0x201055f3
mov ecx, 0xb069a184
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xbc], eax
jmp 0x10005b20
mov dword [ebp - 0xbc], 0xd1106b5
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x10380107
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x91f73491
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x1ae59f33
jmp 0x10005b20
mov dword [ebp - 0xbc], 0x2d9e8550
jmp 0x10005b20
mov eax, dword [ebp - 0x90]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0xbc], 0xc5ddfd1f
jmp 0x10005b20
mov eax, dword [ebp - 0x88]
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xbc], 0x2192682a
jmp 0x10005b20
mov eax, dword [ebp - 0x80]
mov dword [eax], 0
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xbc], 0xa18a1903
jmp 0x10005b20
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0xbc], 0x18202e58
jmp 0x10005b20
mov eax, dword [ebp - 0x88]
mov cx, word [ebp - 0x16]
mov word [eax], cx
mov dword [ebp - 0xbc], 0x28eba31c
jmp 0x10001787