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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0xa0
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa4], eax
mov eax, dword [0x10065000]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x10066348]
mov eax, dword [0x10066344]
mov edx, ecx
add edx, 0x3977d088
sub edx, 1
sub edx, 0x3977d088
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x9a], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x99], al
mov dword [ebp - 0xa0], 0x9b051c2f
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0xa8], eax
sub eax, 0x8262624d
je 0x100026f2
jmp 0x100014f3
mov eax, dword [ebp - 0xa8]
sub eax, 0x840be7b9
je 0x10002121
jmp 0x10001509
mov eax, dword [ebp - 0xa8]
sub eax, 0x85350e4c
je 0x100029d9
jmp 0x1000151f
mov eax, dword [ebp - 0xa8]
sub eax, 0x86802441
je 0x100022eb
jmp 0x10001535
mov eax, dword [ebp - 0xa8]
sub eax, 0x87a15897
je 0x10002888
jmp 0x1000154b
mov eax, dword [ebp - 0xa8]
sub eax, 0x8b7e86b4
je 0x1000261a
jmp 0x10001561
mov eax, dword [ebp - 0xa8]
sub eax, 0x9b051c2f
je 0x10001a62
jmp 0x10001577
mov eax, dword [ebp - 0xa8]
sub eax, 0x9c2030d5
je 0x100025d1
jmp 0x1000158d
mov eax, dword [ebp - 0xa8]
sub eax, 0x9edd80c5
je 0x100023de
jmp 0x100015a3
mov eax, dword [ebp - 0xa8]
sub eax, 0xa1f5a66b
je 0x10002877
jmp 0x100015b9
mov eax, dword [ebp - 0xa8]
sub eax, 0xa3ba029e
je 0x10001f4d
jmp 0x100015cf
mov eax, dword [ebp - 0xa8]
sub eax, 0xa5c23cc9
je 0x10002484
jmp 0x100015e5
mov eax, dword [ebp - 0xa8]
sub eax, 0xac44e1c7
je 0x10001ee5
jmp 0x100015fb
mov eax, dword [ebp - 0xa8]
sub eax, 0xb92d76fa
je 0x10002234
jmp 0x10001611
mov eax, dword [ebp - 0xa8]
sub eax, 0xbd1456b3
je 0x10002868
jmp 0x10001627
mov eax, dword [ebp - 0xa8]
sub eax, 0xc6627a22
je 0x100025b3
jmp 0x1000163d
mov eax, dword [ebp - 0xa8]
sub eax, 0xcb819ace
je 0x10001efc
jmp 0x10001653
mov eax, dword [ebp - 0xa8]
sub eax, 0xd2a764a5
je 0x10001df2
jmp 0x10001669
mov eax, dword [ebp - 0xa8]
sub eax, 0xd3b782fc
je 0x10001ab6
jmp 0x1000167f
mov eax, dword [ebp - 0xa8]
sub eax, 0xd6c14a76
je 0x10002907
jmp 0x10001695
mov eax, dword [ebp - 0xa8]
sub eax, 0xd7d9fc81
je 0x10002941
jmp 0x100016ab
mov eax, dword [ebp - 0xa8]
sub eax, 0xd93d599c
je 0x1000275b
jmp 0x100016c1
mov eax, dword [ebp - 0xa8]
sub eax, 0xda7d05a4
je 0x100028a6
jmp 0x100016d7
mov eax, dword [ebp - 0xa8]
sub eax, 0xe26b8827
je 0x10001ed6
jmp 0x100016ed
mov eax, dword [ebp - 0xa8]
sub eax, 0xe3184825
je 0x10002386
jmp 0x10001703
mov eax, dword [ebp - 0xa8]
sub eax, 0xe3680577
je 0x100027ba
jmp 0x10001719
mov eax, dword [ebp - 0xa8]
sub eax, 0xea98fdba
je 0x10001c9a
jmp 0x1000172f
mov eax, dword [ebp - 0xa8]
sub eax, 0xee50846a
je 0x10001ce3
jmp 0x10001745
mov eax, dword [ebp - 0xa8]
sub eax, 0xf1c0ae28
je 0x1000280b
jmp 0x1000175b
mov eax, dword [ebp - 0xa8]
sub eax, 0xf49e14c1
je 0x100029b4
jmp 0x10001771
mov eax, dword [ebp - 0xa8]
sub eax, 0xf7cc51c0
je 0x10001b4d
jmp 0x10001787
mov eax, dword [ebp - 0xa8]
sub eax, 0xfbfc3158
je 0x10002774
jmp 0x1000179d
mov eax, dword [ebp - 0xa8]
sub eax, 0xfeb5a4eb
je 0x10002030
jmp 0x100017b3
mov eax, dword [ebp - 0xa8]
sub eax, 0xffff0e49
je 0x1000205d
jmp 0x100017c9
mov eax, dword [ebp - 0xa8]
sub eax, 0x297c4ef
je 0x1000204e
jmp 0x100017df
mov eax, dword [ebp - 0xa8]
sub eax, 0x6faa209
je 0x1000213a
jmp 0x100017f5
mov eax, dword [ebp - 0xa8]
sub eax, 0x9d6df34
je 0x1000291c
jmp 0x1000180b
mov eax, dword [ebp - 0xa8]
sub eax, 0x12a6f58d
je 0x1000279c
jmp 0x10001821
mov eax, dword [ebp - 0xa8]
sub eax, 0x13733f6f
je 0x10001fec
jmp 0x10001837
mov eax, dword [ebp - 0xa8]
sub eax, 0x13cbcfce
je 0x10001c2b
jmp 0x1000184d
mov eax, dword [ebp - 0xa8]
sub eax, 0x178bd8a3
je 0x10002684
jmp 0x10001863
mov eax, dword [ebp - 0xa8]
sub eax, 0x24a07358
je 0x10001c49
jmp 0x10001879
mov eax, dword [ebp - 0xa8]
sub eax, 0x27b8a377
je 0x10002019
jmp 0x1000188f
mov eax, dword [ebp - 0xa8]
sub eax, 0x283d13d0
je 0x100029c6
jmp 0x100018a5
mov eax, dword [ebp - 0xa8]
sub eax, 0x3160e7e0
je 0x10001ffb
jmp 0x100018bb
mov eax, dword [ebp - 0xa8]
sub eax, 0x328535bd
je 0x100020b3
jmp 0x100018d1
mov eax, dword [ebp - 0xa8]
sub eax, 0x35e61118
je 0x10002108
jmp 0x100018e7
mov eax, dword [ebp - 0xa8]
sub eax, 0x3b8acde0
je 0x10002675
jmp 0x100018fd
mov eax, dword [ebp - 0xa8]
sub eax, 0x467037b3
je 0x10002564
jmp 0x10001913
mov eax, dword [ebp - 0xa8]
sub eax, 0x4686d5cb
je 0x10002395
jmp 0x10001929
mov eax, dword [ebp - 0xa8]
sub eax, 0x4a2822ca
je 0x10001b3e
jmp 0x1000193f
mov eax, dword [ebp - 0xa8]
sub eax, 0x4a9188d9
je 0x100020d5
jmp 0x10001955
mov eax, dword [ebp - 0xa8]
sub eax, 0x4e130506
je 0x10001d42
jmp 0x1000196b
mov eax, dword [ebp - 0xa8]
sub eax, 0x51189e7a
je 0x100028b5
jmp 0x10001981
mov eax, dword [ebp - 0xa8]
sub eax, 0x5b2e008d
je 0x10001e60
jmp 0x10001997
mov eax, dword [ebp - 0xa8]
sub eax, 0x6263332a
je 0x100021b0
jmp 0x100019ad
mov eax, dword [ebp - 0xa8]
sub eax, 0x6498cb3f
je 0x100025c2
jmp 0x100019c3
mov eax, dword [ebp - 0xa8]
sub eax, 0x663364cb
je 0x10002252
jmp 0x100019d9
mov eax, dword [ebp - 0xa8]
sub eax, 0x6970e57c
je 0x10002466
jmp 0x100019ef
mov eax, dword [ebp - 0xa8]
sub eax, 0x6ee852fd
je 0x1000274c
jmp 0x10001a05
mov eax, dword [ebp - 0xa8]
sub eax, 0x708f7023
je 0x1000227d
jmp 0x10001a1b
mov eax, dword [ebp - 0xa8]
sub eax, 0x76b8169c
je 0x10002897
jmp 0x10001a31
mov eax, dword [ebp - 0xa8]
sub eax, 0x78abf5e8
je 0x10001dd4
jmp 0x10001a47
mov eax, dword [ebp - 0xa8]
sub eax, 0x7c498485
je 0x10001cf2
jmp 0x10001a5d
jmp 0x100029f7
mov bl, byte [ebp - 0x9a]
mov dh, byte [ebp - 0x99]
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, 0x87a15897
mov ecx, 0xd3b782fc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
push eax
mov eax, esp
mov dword [ebp - 0x98], eax
push eax
mov eax, esp
mov dword [ebp - 0x94], eax
mov ecx, dword [0x10066348]
mov eax, dword [0x10066344]
mov edx, ecx
add edx, 0xab83404c
sub edx, 1
sub edx, 0xab83404c
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, 0x87a15897
mov ecx, 0x4a2822ca
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov dword [ebp - 0xa0], 0xf7cc51c0
jmp 0x100029f7
mov ecx, dword [ebp - 0xa4]
push eax
sub esp, 8
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
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x84], eax
push eax
mov eax, esp
mov dword [ebp - 0x80], eax
push eax
mov eax, esp
mov dword [ebp - 0x7c], eax
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
mov eax, dword [ebp - 0x98]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10006ce0
add esp, 0xc
mov eax, dword [ebp - 0x98]
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 - 0x8c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0xa0], 0x13cbcfce
jmp 0x100029f7
mov edx, dword [ebp - 0x5c]
mov eax, 0x24a07358
mov ecx, 0x7c498485
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
mov edx, eax
add edx, 0x212e02e7
sub edx, 1
sub edx, 0x212e02e7
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, 0x76b8169c
mov ecx, 0xea98fdba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
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, 0x76b8169c
mov ecx, 0xee50846a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov dword [ebp - 0xa0], 0xa1f5a66b
jmp 0x100029f7
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x94]
mov edx, dword [eax]
mov eax, dword [ebp - 0x90]
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 - 0x90]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x88]
mov dword [eax], ecx
mov dword [ebp - 0xa0], 0x4e130506
jmp 0x100029f7
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x8c]
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 - 0x84]
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 - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x55], al
mov dword [ebp - 0xa0], 0x78abf5e8
jmp 0x100029f7
mov dl, byte [ebp - 0x55]
mov eax, 0xac44e1c7
mov ecx, 0xd2a764a5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov ecx, dword [0x10066348]
mov eax, dword [0x10066344]
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, 0xda7d05a4
mov ecx, 0x5b2e008d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov ecx, dword [0x10066348]
mov eax, dword [0x10066344]
mov edx, ecx
add edx, 0xf197f78b
sub edx, 1
sub edx, 0xf197f78b
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, 0xda7d05a4
mov ecx, 0xe26b8827
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov dword [ebp - 0xa0], 0xa1f5a66b
jmp 0x100029f7
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0xa0], 0xcb819ace
jmp 0x100029f7
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
mov edx, eax
sub edx, 0x614dbc64
sub edx, 1
add edx, 0x614dbc64
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, 0x51189e7a
mov ecx, 0xa3ba029e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov eax, dword [ebp - 0x54]
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 - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x4d], al
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
mov edx, eax
add edx, 0x21e5e2f2
sub edx, 1
sub edx, 0x21e5e2f2
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, 0x51189e7a
mov ecx, 0x13733f6f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov dword [ebp - 0xa0], 0x3160e7e0
jmp 0x100029f7
mov dl, byte [ebp - 0x4d]
mov eax, 0x27b8a377
mov ecx, 0xffff0e49
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0xa0], 0xfeb5a4eb
jmp 0x100029f7
mov eax, dword [ebp - 0x4c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa0], 0x297c4ef
jmp 0x100029f7
mov dword [ebp - 0xa0], 0xa1f5a66b
jmp 0x100029f7
mov eax, dword [ebp - 0x7c]
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 - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x74]
mov dword [eax], ecx
mov dword [ebp - 0xa0], 0x328535bd
jmp 0x100029f7
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0xa0], 0x4a9188d9
jmp 0x100029f7
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x48]
add ecx, 0x5d8147a8
add ecx, eax
sub ecx, 0x5d8147a8
mov eax, dword [ebp - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x6c]
mov word [eax], 0
mov dword [ebp - 0xa0], 0x35e61118
jmp 0x100029f7
mov eax, dword [ebp - 0x6c]
mov ax, word [eax]
mov word [ebp - 0x3e], ax
mov dword [ebp - 0xa0], 0x840be7b9
jmp 0x100029f7
mov ax, word [ebp - 0x3e]
movzx eax, ax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0xa0], 0x6faa209
jmp 0x100029f7
mov ecx, dword [0x10066348]
mov eax, dword [0x10066344]
mov edx, ecx
add edx, 0xe8a8143d
sub edx, 1
sub edx, 0xe8a8143d
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, 0xd6c14a76
mov ecx, 0x6263332a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
movzx ecx, word [eax + 6]
mov eax, dword [ebp - 0x3c]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x35], al
mov ecx, dword [0x10066348]
mov eax, dword [0x10066344]
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, 0xd6c14a76
mov ecx, 0xb92d76fa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov dl, byte [ebp - 0x35]
mov eax, 0xfbfc3158
mov ecx, 0x663364cb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov ax, word [eax + 0x14]
mov word [ebp - 0x2e], ax
mov dword [ebp - 0xa0], 0x708f7023
jmp 0x100029f7
mov ecx, dword [0x10066348]
mov eax, dword [0x10066344]
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, 0x9d6df34
mov ecx, 0x86802441
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov ax, word [ebp - 0x2e]
movzx ecx, ax
mov eax, dword [ebp - 0x34]
sub eax, 0xbe1f1ff
add eax, ecx
add eax, 0xbe1f1ff
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax]
imul eax, eax, 0x28
mov dword [ebp - 0x28], eax
mov ecx, dword [0x10066348]
mov eax, dword [0x10066344]
mov edx, ecx
sub edx, 0x8ab4dd12
sub edx, 1
add edx, 0x8ab4dd12
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, 0x9d6df34
mov ecx, 0xe3184825
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov dword [ebp - 0xa0], 0x4686d5cb
jmp 0x100029f7
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
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, 0xd7d9fc81
mov ecx, 0x9edd80c5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x28]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x68]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10012190
call fcn.10009050
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x21], al
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
mov edx, eax
sub edx, 0x97cb3d15
sub edx, 1
add edx, 0x97cb3d15
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, 0xd7d9fc81
mov ecx, 0x6970e57c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov dl, byte [ebp - 0x21]
mov eax, 0xa5c23cc9
mov ecx, 0x6498cb3f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov eax, dword [ebp - 0x64]
mov dword [eax], 0
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x88]
mov edx, dword [eax]
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xbda90047
add edx, eax
sub edx, 0xbda90047
mov eax, dword [ebp - 0x64]
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 - 0x60]
mov byte [eax], cl
mov eax, dword [ebp - 0x88]
mov edx, dword [eax]
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0x644a009d
add edx, eax
add edx, 0x644a009d
mov eax, dword [ebp - 0x78]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x68]
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 - 0x68]
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.10006e40
add esp, 0xc
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0xa0], 0x467037b3
jmp 0x100029f7
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
mov esi, dword [ebp - 0x18]
xor eax, eax
sub eax, ecx
sub esi, eax
mov eax, dword [ebp - 0x64]
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 - 0x60]
mov byte [eax], cl
mov dword [ebp - 0xa0], 0xc6627a22
jmp 0x100029f7
mov dword [ebp - 0xa0], 0x6498cb3f
jmp 0x100029f7
mov dword [ebp - 0xa0], 0x9c2030d5
jmp 0x100029f7
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
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, 0xf49e14c1
mov ecx, 0x8b7e86b4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov eax, dword [ebp - 0x6c]
mov ax, word [eax]
mov word [ebp - 0x14], ax
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
mov edx, eax
sub edx, 0x2800e749
sub edx, 1
add edx, 0x2800e749
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, 0xf49e14c1
mov ecx, 0x3b8acde0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov dword [ebp - 0xa0], 0x178bd8a3
jmp 0x100029f7
mov ecx, dword [0x10066348]
mov eax, dword [0x10066344]
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, 0x283d13d0
mov ecx, 0x8262624d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov ax, word [ebp - 0x14]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x12], ax
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
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, 0x283d13d0
mov ecx, 0x6ee852fd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov dword [ebp - 0xa0], 0xd93d599c
jmp 0x100029f7
mov eax, dword [ebp - 0x6c]
mov cx, word [ebp - 0x12]
mov word [eax], cx
mov dword [ebp - 0xa0], 0x35e61118
jmp 0x100029f7
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xa0], 0x12a6f58d
jmp 0x100029f7
mov eax, dword [ebp - 0x10]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa0], 0xe3680577
jmp 0x100029f7
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
mov edx, eax
add edx, 0x9b867d40
sub edx, 1
sub edx, 0x9b867d40
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, 0x85350e4c
mov ecx, 0xf1c0ae28
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x10066348]
mov ecx, dword [0x10066344]
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, 0x85350e4c
mov ecx, 0xbd1456b3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x100029f7
mov dword [ebp - 0xa0], 0xa1f5a66b
jmp 0x100029f7
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.100060e0
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0xa0], 0xd3b782fc
jmp 0x100029f7
mov dword [ebp - 0xa0], 0xea98fdba
jmp 0x100029f7
mov dword [ebp - 0xa0], 0x5b2e008d
jmp 0x100029f7
mov eax, dword [ebp - 0x54]
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 - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0xa0], 0xa3ba029e
jmp 0x100029f7
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xa0], 0x6263332a
jmp 0x100029f7
mov ax, word [ebp - 0x2e]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0xa0], 0x86802441
jmp 0x100029f7
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
sub ecx, 0x2ce45bfb
add ecx, eax
add ecx, 0x2ce45bfb
mov eax, dword [ebp - 0x68]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10012190
call fcn.10009050
add esp, 8
mov dword [ebp - 0xa0], 0x9edd80c5
jmp 0x100029f7
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0xa0], 0x8b7e86b4
jmp 0x100029f7
mov ax, word [ebp - 0x14]
mov dword [ebp - 0xa0], 0x8262624d
jmp 0x100029f7
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa0], 0xf1c0ae28
jmp 0x100014d7