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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0xac
mov eax, dword [ebp + 8]
mov dword [ebp - 0xb0], eax
mov eax, dword [0x1006c800]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
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 - 0xa6], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0xa5], al
mov dword [ebp - 0xac], 0x6111d9e1
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xb4], eax
sub eax, 0x87af1466
je 0x10002b21
jmp 0x1000139b
mov eax, dword [ebp - 0xb4]
sub eax, 0x8be4ac21
je 0x10002b0c
jmp 0x100013b1
mov eax, dword [ebp - 0xb4]
sub eax, 0x8ed0e51d
je 0x10002495
jmp 0x100013c7
mov eax, dword [ebp - 0xb4]
sub eax, 0x8f01c322
je 0x10002874
jmp 0x100013dd
mov eax, dword [ebp - 0xb4]
sub eax, 0x91229c8c
je 0x10002078
jmp 0x100013f3
mov eax, dword [ebp - 0xb4]
sub eax, 0x9540b865
je 0x100022d7
jmp 0x10001409
mov eax, dword [ebp - 0xb4]
sub eax, 0x976b987d
je 0x10001ef1
jmp 0x1000141f
mov eax, dword [ebp - 0xb4]
sub eax, 0x996f4a2c
je 0x10002749
jmp 0x10001435
mov eax, dword [ebp - 0xb4]
sub eax, 0x9b259c63
je 0x10002a4e
jmp 0x1000144b
mov eax, dword [ebp - 0xb4]
sub eax, 0x9b694a5a
je 0x1000250a
jmp 0x10001461
mov eax, dword [ebp - 0xb4]
sub eax, 0x9ba597eb
je 0x10001e42
jmp 0x10001477
mov eax, dword [ebp - 0xb4]
sub eax, 0x9eaabef6
je 0x10001b65
jmp 0x1000148d
mov eax, dword [ebp - 0xb4]
sub eax, 0x9f0e1a8d
je 0x10001fb1
jmp 0x100014a3
mov eax, dword [ebp - 0xb4]
sub eax, 0xa060a021
je 0x10002b68
jmp 0x100014b9
mov eax, dword [ebp - 0xb4]
sub eax, 0xa1f2851b
je 0x10001ad6
jmp 0x100014cf
mov eax, dword [ebp - 0xb4]
sub eax, 0xa794f359
je 0x10002a1f
jmp 0x100014e5
mov eax, dword [ebp - 0xb4]
sub eax, 0xa87e860c
je 0x10002758
jmp 0x100014fb
mov eax, dword [ebp - 0xb4]
sub eax, 0xb00d9054
je 0x1000255b
jmp 0x10001511
mov eax, dword [ebp - 0xb4]
sub eax, 0xb01c14fe
je 0x100021d5
jmp 0x10001527
mov eax, dword [ebp - 0xb4]
sub eax, 0xb43fa792
je 0x10001ed7
jmp 0x1000153d
mov eax, dword [ebp - 0xb4]
sub eax, 0xb487cfc4
je 0x100022c8
jmp 0x10001553
mov eax, dword [ebp - 0xb4]
sub eax, 0xb573f198
je 0x10002838
jmp 0x10001569
mov eax, dword [ebp - 0xb4]
sub eax, 0xc8fd40d7
je 0x100019ff
jmp 0x1000157f
mov eax, dword [ebp - 0xb4]
sub eax, 0xc9130fad
je 0x10002087
jmp 0x10001595
mov eax, dword [ebp - 0xb4]
sub eax, 0xd3414935
je 0x10002b36
jmp 0x100015ab
mov eax, dword [ebp - 0xb4]
sub eax, 0xd9c41bbb
je 0x10001bdb
jmp 0x100015c1
mov eax, dword [ebp - 0xb4]
sub eax, 0xeac8f614
je 0x1000285b
jmp 0x100015d7
mov eax, dword [ebp - 0xb4]
sub eax, 0xede22772
je 0x10001f42
jmp 0x100015ed
mov eax, dword [ebp - 0xb4]
sub eax, 0xef6a2ff6
je 0x1000294e
jmp 0x10001603
mov eax, dword [ebp - 0xb4]
sub eax, 0xfdb08dff
je 0x10001d3d
jmp 0x10001619
mov eax, dword [ebp - 0xb4]
sub eax, 0x1a1cf0
je 0x10001aa6
jmp 0x1000162f
mov eax, dword [ebp - 0xb4]
sub eax, 0xc716f8
je 0x1000269b
jmp 0x10001645
mov eax, dword [ebp - 0xb4]
sub eax, 0x1764fb1
je 0x10002027
jmp 0x1000165b
mov eax, dword [ebp - 0xb4]
sub eax, 0x255663f
je 0x10002a10
jmp 0x10001671
mov eax, dword [ebp - 0xb4]
sub eax, 0x2f1b110
je 0x10002b7a
jmp 0x10001687
mov eax, dword [ebp - 0xb4]
sub eax, 0x36522c6
je 0x1000299f
jmp 0x1000169d
mov eax, dword [ebp - 0xb4]
sub eax, 0xbba3007
je 0x10001cb1
jmp 0x100016b3
mov eax, dword [ebp - 0xb4]
sub eax, 0x10edb3ce
je 0x10002829
jmp 0x100016c9
mov eax, dword [ebp - 0xb4]
sub eax, 0x117af691
je 0x100021a8
jmp 0x100016df
mov eax, dword [ebp - 0xb4]
sub eax, 0x11a87183
je 0x10001eb9
jmp 0x100016f5
mov eax, dword [ebp - 0xb4]
sub eax, 0x12a06cb7
je 0x10002a5d
jmp 0x1000170b
mov eax, dword [ebp - 0xb4]
sub eax, 0x1680aac1
je 0x10001c2c
jmp 0x10001721
mov eax, dword [ebp - 0xb4]
sub eax, 0x173607c2
je 0x1000293f
jmp 0x10001737
mov eax, dword [ebp - 0xb4]
sub eax, 0x17a5a64f
je 0x10002afa
jmp 0x1000174d
mov eax, dword [ebp - 0xb4]
sub eax, 0x18c16146
je 0x10002250
jmp 0x10001763
mov eax, dword [ebp - 0xb4]
sub eax, 0x1aae74fd
je 0x10001e11
jmp 0x10001779
mov eax, dword [ebp - 0xb4]
sub eax, 0x218e9a71
je 0x100026f5
jmp 0x1000178f
mov eax, dword [ebp - 0xb4]
sub eax, 0x24c32526
je 0x100023d0
jmp 0x100017a5
mov eax, dword [ebp - 0xb4]
sub eax, 0x25cfb2ad
je 0x10002a78
jmp 0x100017bb
mov eax, dword [ebp - 0xb4]
sub eax, 0x282a2ea9
je 0x10001e99
jmp 0x100017d1
mov eax, dword [ebp - 0xb4]
sub eax, 0x2956922f
je 0x10001e33
jmp 0x100017e7
mov eax, dword [ebp - 0xb4]
sub eax, 0x2956e97d
je 0x100028bd
jmp 0x100017fd
mov eax, dword [ebp - 0xb4]
sub eax, 0x36e83e48
je 0x10002a2e
jmp 0x10001813
mov eax, dword [ebp - 0xb4]
sub eax, 0x3b1d383a
je 0x100022fe
jmp 0x10001829
mov eax, dword [ebp - 0xb4]
sub eax, 0x3e0fe50f
je 0x10002427
jmp 0x1000183f
mov eax, dword [ebp - 0xb4]
sub eax, 0x46ca6028
je 0x10001d4c
jmp 0x10001855
mov eax, dword [ebp - 0xb4]
sub eax, 0x492fac82
je 0x100020d8
jmp 0x1000186b
mov eax, dword [ebp - 0xb4]
sub eax, 0x4f001466
je 0x10002207
jmp 0x10001881
mov eax, dword [ebp - 0xb4]
sub eax, 0x5b735d30
je 0x10002374
jmp 0x10001897
mov eax, dword [ebp - 0xb4]
sub eax, 0x5c5eec85
je 0x10002a3f
jmp 0x100018ad
mov eax, dword [ebp - 0xb4]
sub eax, 0x5f50fd75
je 0x10002199
jmp 0x100018c3
mov eax, dword [ebp - 0xb4]
sub eax, 0x5f73afc2
je 0x10001fa2
jmp 0x100018d9
mov eax, dword [ebp - 0xb4]
sub eax, 0x610373cf
je 0x100025d2
jmp 0x100018ef
mov eax, dword [ebp - 0xb4]
sub eax, 0x6111d9e1
je 0x100019d0
jmp 0x10001905
mov eax, dword [ebp - 0xb4]
sub eax, 0x6168f6b3
je 0x100027ce
mov al, byte [ebp - 0xa6]
mov cl, byte [ebp - 0xa5]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x5c5eec85
mov ecx, 0xc8fd40d7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
push eax
mov eax, esp
mov dword [ebp - 0xa4], eax
push eax
mov eax, esp
mov dword [ebp - 0xa0], eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x9c], eax
push eax
mov eax, esp
mov dword [ebp - 0x98], eax
push eax
mov eax, esp
mov dword [ebp - 0x94], eax
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x90], eax
push eax
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
push eax
mov eax, esp
mov dword [ebp - 0x80], eax
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0x5c5eec85
mov ecx, 0x1a1cf0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0x6ac9803d
jmp 0x10002bcf
mov ecx, dword [ebp - 0xb0]
push eax
mov eax, esp
mov dword [ebp - 0x70], eax
push eax
mov eax, esp
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0xa4]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0xa0]
mov dword [eax], ecx
mov eax, dword [ebp - 0x9c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10010560
add esp, 0xc
mov eax, dword [ebp - 0xa4]
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 - 0x98]
mov dword [eax], ecx
mov edx, dword [ebp - 0x98]
mov eax, 0x9eaabef6
mov ecx, 0x78d69974
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
sub edx, 0x4914b5da
sub edx, 1
add edx, 0x4914b5da
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, 0x9b259c63
mov ecx, 0xd9c41bbb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
sub edx, 0x8b5fd3a2
sub edx, 1
add edx, 0x8b5fd3a2
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, 0x9b259c63
mov ecx, 0x1680aac1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0x36e83e48
jmp 0x10002bcf
mov eax, dword [ebp - 0x98]
mov eax, dword [eax]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
add edx, 0x76773c71
sub edx, 1
sub edx, 0x76773c71
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, 0x12a06cb7
mov ecx, 0xfdb08dff
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0x46ca6028
jmp 0x10002bcf
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
sub esp, 0x10
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xc
call sub.KERNEL32.dll_K32GetModuleInformation
mov eax, dword [ebp - 0x9c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x98]
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 - 0x90]
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 - 0x8c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0xac], 0x1aae74fd
jmp 0x10002bcf
mov edx, dword [ebp - 0x60]
mov esi, 0xffffffff
mov eax, 0x9ba597eb
mov ecx, 0x2956922f
cmp edx, esi
cmove eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0x36e83e48
jmp 0x10002bcf
mov eax, dword [ebp - 0x8c]
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 - 0x88]
mov dword [eax], ecx
mov dword [ebp - 0xac], 0x282a2ea9
jmp 0x10002bcf
mov eax, dword [ebp - 0x88]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x59], al
mov dword [ebp - 0xac], 0x11a87183
jmp 0x10002bcf
mov dl, byte [ebp - 0x59]
mov eax, 0xb43fa792
mov ecx, 0xc9130fad
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0xac], 0x976b987d
jmp 0x10002bcf
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
add edx, 0xa0dddf64
sub edx, 1
sub edx, 0xa0dddf64
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, 0x25cfb2ad
mov ecx, 0xede22772
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [ebp - 0x58]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
add edx, 0x709511d5
sub edx, 1
sub edx, 0x709511d5
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, 0x25cfb2ad
mov ecx, 0x5f73afc2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0x9f0e1a8d
jmp 0x10002bcf
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
add edx, 0x1b835037
sub edx, 1
sub edx, 0x1b835037
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, 0x70e9be7f
mov ecx, 0x1764fb1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
sub edx, 0x231954dc
sub edx, 1
add edx, 0x231954dc
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, 0x70e9be7f
mov ecx, 0x91229c8c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0x36e83e48
jmp 0x10002bcf
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
sub edx, 0x23df98cb
sub edx, 1
add edx, 0x23df98cb
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, 0x76d0a355
mov ecx, 0x492fac82
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [ebp - 0x88]
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 - 0x84]
mov dword [eax], ecx
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
sub edx, 0xfc53310e
sub edx, 1
add edx, 0xfc53310e
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, 0x76d0a355
mov ecx, 0x5f50fd75
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0x117af691
jmp 0x10002bcf
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x54]
mov dword [eax], ecx
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
add eax, 0x3c
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0xac], 0xb01c14fe
jmp 0x10002bcf
mov eax, dword [ebp - 0x4c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x50]
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 - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov word [eax], 0
mov dword [ebp - 0xac], 0x4f001466
jmp 0x10002bcf
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0x17a5a64f
mov ecx, 0x18c16146
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [ebp - 0x78]
mov ax, word [eax]
mov word [ebp - 0x46], ax
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
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, 0x17a5a64f
mov ecx, 0xb487cfc4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0x9540b865
jmp 0x10002bcf
mov ax, word [ebp - 0x46]
movzx eax, ax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x40], eax
mov dword [ebp - 0xac], 0x3b1d383a
jmp 0x10002bcf
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
add edx, 0x467b574a
sub edx, 1
sub edx, 0x467b574a
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, 0x8be4ac21
mov ecx, 0x5b735d30
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [ebp - 0x40]
movzx ecx, word [eax]
mov eax, dword [ebp - 0x44]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x39], al
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0x8be4ac21
mov ecx, 0x24c32526
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dl, byte [ebp - 0x39]
mov eax, 0x8f01c322
mov ecx, 0x7c0c234a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
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, 0x87af1466
mov ecx, 0x8ed0e51d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x78]
movzx ecx, word [ecx]
imul edx, ecx, 0x28
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x34], eax
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
add edx, 0x684d9f0c
sub edx, 1
sub edx, 0x684d9f0c
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, 0x87af1466
mov ecx, 0x62fd62b2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
sub edx, 0xc92c10da
sub edx, 1
add edx, 0xc92c10da
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, 0xd3414935
mov ecx, 0xb00d9054
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x34]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1001c3b0
call fcn.100128d0
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x2d], al
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0xd3414935
mov ecx, 0x610373cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dl, byte [ebp - 0x2d]
mov eax, 0x69bf026b
mov ecx, 0x996f4a2c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.100106c0
add esp, 0xc
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
add eax, 0xc
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xac], 0x218e9a71
jmp 0x10002bcf
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
mov esi, dword [ebp - 0x18]
sub esi, 0xca38a545
add esi, eax
add esi, 0xca38a545
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
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 - 0x6c]
mov byte [eax], cl
mov dword [ebp - 0xac], 0x996f4a2c
jmp 0x10002bcf
mov dword [ebp - 0xac], 0xa87e860c
jmp 0x10002bcf
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
mov edx, ecx
add edx, 0xe3cc7269
sub edx, 1
sub edx, 0xe3cc7269
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, 0xa060a021
mov ecx, 0x6168f6b3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0xb573f198
jmp 0x10002bcf
mov ax, word [ebp - 0x10]
sub ax, 0x3564
add ax, 1
add ax, 0x3564
mov word [ebp - 0xe], ax
mov dword [ebp - 0xac], 0xeac8f614
jmp 0x10002bcf
mov eax, dword [ebp - 0x78]
mov cx, word [ebp - 0xe]
mov word [eax], cx
mov dword [ebp - 0xac], 0x4f001466
jmp 0x10002bcf
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0x2f1b110
mov ecx, 0x2956e97d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x1006db48]
mov eax, dword [0x1006db44]
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, 0x2f1b110
mov ecx, 0x173607c2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0xef6a2ff6
jmp 0x10002bcf
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
mov edx, eax
add edx, 0x4826257e
sub edx, 1
sub edx, 0x4826257e
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, 0x775b0e17
mov ecx, 0x36522c6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1006db48]
mov ecx, dword [0x1006db44]
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, 0x775b0e17
mov ecx, 0x255663f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xac], eax
jmp 0x10002bcf
mov dword [ebp - 0xac], 0xa794f359
jmp 0x10002bcf
mov dword [ebp - 0xac], 0x36e83e48
jmp 0x10002bcf
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000f960
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0xac], 0xc8fd40d7
jmp 0x10002bcf
mov dword [ebp - 0xac], 0xd9c41bbb
jmp 0x10002bcf
mov eax, dword [ebp - 0x98]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0xac], 0xbba3007
jmp 0x10002bcf
mov eax, dword [ebp - 0x58]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0xede22772
jmp 0x10002bcf
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xac], 0x18c16146
jmp 0x10002bcf
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0xac], 0x5b735d30
jmp 0x10002bcf
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xac], 0x8ed0e51d
jmp 0x10002bcf
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x34]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1001c3b0
call fcn.100128d0
add esp, 8
mov dword [ebp - 0xac], 0xb00d9054
jmp 0x10002bcf
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xac], 0x6168f6b3
jmp 0x10002bcf
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xac], 0x2956e97d
jmp 0x10002bcf
jmp 0x1000137f