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, 0x98
mov eax, dword [ebp + 8]
mov dword [ebp - 0x9c], eax
mov eax, dword [0x10065200]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
sub edx, 0x4ae188b3
sub edx, 1
add edx, 0x4ae188b3
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x92], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x91], al
mov dword [ebp - 0x98], 0xec75caf
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0xa0], eax
sub eax, 0x89d6b9d8
je 0x10001f93
jmp 0x100013a3
mov eax, dword [ebp - 0xa0]
sub eax, 0x8e480f1a
je 0x10002b0e
jmp 0x100013b9
mov eax, dword [ebp - 0xa0]
sub eax, 0x9675fd44
je 0x10002ae5
jmp 0x100013cf
mov eax, dword [ebp - 0xa0]
sub eax, 0x96818a29
je 0x1000233c
jmp 0x100013e5
mov eax, dword [ebp - 0xa0]
sub eax, 0x9e198674
je 0x100024fd
jmp 0x100013fb
mov eax, dword [ebp - 0xa0]
sub eax, 0x9e90602b
je 0x10001f75
jmp 0x10001411
mov eax, dword [ebp - 0xa0]
sub eax, 0xa899ad96
je 0x1000219e
jmp 0x10001427
mov eax, dword [ebp - 0xa0]
sub eax, 0xa9bae973
je 0x10002972
jmp 0x1000143d
mov eax, dword [ebp - 0xa0]
sub eax, 0xab1aecd7
je 0x10002778
jmp 0x10001453
mov eax, dword [ebp - 0xa0]
sub eax, 0xab6068a6
je 0x10001c77
jmp 0x10001469
mov eax, dword [ebp - 0xa0]
sub eax, 0xae4347c0
je 0x100023e2
jmp 0x1000147f
mov eax, dword [ebp - 0xa0]
sub eax, 0xafe19089
je 0x10002274
jmp 0x10001495
mov eax, dword [ebp - 0xa0]
sub eax, 0xb061b153
je 0x10002a40
jmp 0x100014ab
mov eax, dword [ebp - 0xa0]
sub eax, 0xb06292e7
je 0x10002c87
jmp 0x100014c1
mov eax, dword [ebp - 0xa0]
sub eax, 0xb28d4361
je 0x10002ad6
jmp 0x100014d7
mov eax, dword [ebp - 0xa0]
sub eax, 0xb882b563
je 0x10001b08
jmp 0x100014ed
mov eax, dword [ebp - 0xa0]
sub eax, 0xba973a24
je 0x10002b3e
jmp 0x10001503
mov eax, dword [ebp - 0xa0]
sub eax, 0xbc20fde5
je 0x10001eb6
jmp 0x10001519
mov eax, dword [ebp - 0xa0]
sub eax, 0xc40fb6b0
je 0x10002bf2
jmp 0x1000152f
mov eax, dword [ebp - 0xa0]
sub eax, 0xc67ae313
je 0x10002c33
jmp 0x10001545
mov eax, dword [ebp - 0xa0]
sub eax, 0xca3b5742
je 0x100029ac
jmp 0x1000155b
mov eax, dword [ebp - 0xa0]
sub eax, 0xcaca0790
je 0x10001d50
jmp 0x10001571
mov eax, dword [ebp - 0xa0]
sub eax, 0xd0108612
je 0x10002af4
jmp 0x10001587
mov eax, dword [ebp - 0xa0]
sub eax, 0xd59c871b
je 0x100028b9
jmp 0x1000159d
mov eax, dword [ebp - 0xa0]
sub eax, 0xd72eeb70
je 0x1000213e
jmp 0x100015b3
mov eax, dword [ebp - 0xa0]
sub eax, 0xd8cfb487
je 0x10002ab6
jmp 0x100015c9
mov eax, dword [ebp - 0xa0]
sub eax, 0xd91e77c4
je 0x10001c68
jmp 0x100015df
mov eax, dword [ebp - 0xa0]
sub eax, 0xdb63184f
je 0x10002b97
jmp 0x100015f5
mov eax, dword [ebp - 0xa0]
sub eax, 0xdbf5ba74
je 0x100024b8
jmp 0x1000160b
mov eax, dword [ebp - 0xa0]
sub eax, 0xdc486499
je 0x100023b1
jmp 0x10001621
mov eax, dword [ebp - 0xa0]
sub eax, 0xe19b58a6
je 0x10002283
jmp 0x10001637
mov eax, dword [ebp - 0xa0]
sub eax, 0xe3a39175
je 0x10001cb7
jmp 0x1000164d
mov eax, dword [ebp - 0xa0]
sub eax, 0xe402497d
je 0x100026f8
jmp 0x10001663
mov eax, dword [ebp - 0xa0]
sub eax, 0xe6a20548
je 0x100022d4
jmp 0x10001679
mov eax, dword [ebp - 0xa0]
sub eax, 0xee581903
je 0x10002069
jmp 0x1000168f
mov eax, dword [ebp - 0xa0]
sub eax, 0xefdf8b1d
je 0x10001e69
jmp 0x100016a5
mov eax, dword [ebp - 0xa0]
sub eax, 0xf0f1c553
je 0x10001aac
jmp 0x100016bb
mov eax, dword [ebp - 0xa0]
sub eax, 0xf33ee10e
je 0x10002353
jmp 0x100016d1
mov eax, dword [ebp - 0xa0]
sub eax, 0xf5966e17
je 0x10002bae
jmp 0x100016e7
mov eax, dword [ebp - 0xa0]
sub eax, 0xf656934b
je 0x10001e3c
jmp 0x100016fd
mov eax, dword [ebp - 0xa0]
sub eax, 0xf8a43f54
je 0x10002c75
jmp 0x10001713
mov eax, dword [ebp - 0xa0]
sub eax, 0xfc242375
je 0x1000256d
jmp 0x10001729
mov eax, dword [ebp - 0xa0]
sub eax, 0x3800551
je 0x10001eff
jmp 0x1000173f
mov eax, dword [ebp - 0xa0]
sub eax, 0x49dd6d4
je 0x100027d4
jmp 0x10001755
mov eax, dword [ebp - 0xa0]
sub eax, 0x4e15e6c
je 0x10001bf2
jmp 0x1000176b
mov eax, dword [ebp - 0xa0]
sub eax, 0x945434f
je 0x10002963
jmp 0x10001781
mov eax, dword [ebp - 0xa0]
sub eax, 0xd7a9ab6
je 0x1000238e
jmp 0x10001797
mov eax, dword [ebp - 0xa0]
sub eax, 0xec75caf
je 0x10001a1a
jmp 0x100017ad
mov eax, dword [ebp - 0xa0]
sub eax, 0x12496b8b
je 0x100027e3
jmp 0x100017c3
mov eax, dword [ebp - 0xa0]
sub eax, 0x17689cc2
je 0x100020d7
jmp 0x100017d9
mov eax, dword [ebp - 0xa0]
sub eax, 0x1bbfc559
je 0x10001abb
jmp 0x100017ef
mov eax, dword [ebp - 0xa0]
sub eax, 0x1eea4dc1
je 0x100025ff
jmp 0x10001805
mov eax, dword [ebp - 0xa0]
sub eax, 0x222d6d68
je 0x100028aa
jmp 0x1000181b
mov eax, dword [ebp - 0xa0]
sub eax, 0x23821b46
je 0x10002707
jmp 0x10001831
mov eax, dword [ebp - 0xa0]
sub eax, 0x27b0bcd9
je 0x10001ba9
jmp 0x10001847
mov eax, dword [ebp - 0xa0]
sub eax, 0x2d5b6857
je 0x10002834
jmp 0x1000185d
mov eax, dword [ebp - 0xa0]
sub eax, 0x302abcf5
je 0x10002675
jmp 0x10001873
mov eax, dword [ebp - 0xa0]
sub eax, 0x37d808d2
je 0x10002c66
jmp 0x10001889
mov eax, dword [ebp - 0xa0]
sub eax, 0x38097b84
je 0x10001fdc
jmp 0x1000189f
mov eax, dword [ebp - 0xa0]
sub eax, 0x38f98ba4
je 0x10002716
jmp 0x100018b5
mov eax, dword [ebp - 0xa0]
sub eax, 0x39250095
je 0x10001e5a
jmp 0x100018cb
mov eax, dword [ebp - 0xa0]
sub eax, 0x3a56cee7
je 0x1000272f
jmp 0x100018e1
mov eax, dword [ebp - 0xa0]
sub eax, 0x3e17d995
je 0x100029ca
jmp 0x100018f7
mov eax, dword [ebp - 0xa0]
sub eax, 0x453a3a82
je 0x1000290a
jmp 0x1000190d
mov eax, dword [ebp - 0xa0]
sub eax, 0x46df5703
je 0x10001dc6
mov al, byte [ebp - 0x92]
mov cl, byte [ebp - 0x91]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x714dd397
mov ecx, 0x7c75b0d4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dword [ebp - 0x98], 0x1bbfc559
jmp 0x10002c91
push eax
sub esp, 8
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
sub esp, 0x104
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
mov dword [ebp - 0x98], 0xb882b563
jmp 0x10002c91
mov ecx, dword [ebp - 0x9c]
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
push eax
mov eax, esp
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, eax
mov eax, dword [ebp - 0x8c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x88]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.100078e0
add esp, 0xc
mov eax, dword [ebp - 0x90]
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 - 0x84]
mov dword [eax], ecx
mov edx, dword [ebp - 0x84]
mov eax, 0x27b0bcd9
mov ecx, 0xab6068a6
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
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, 0xb28d4361
mov ecx, 0x4e15e6c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
sub edx, 0x286b01f
sub edx, 1
add edx, 0x286b01f
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, 0xb28d4361
mov ecx, 0xd91e77c4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dword [ebp - 0x98], 0x3e17d995
jmp 0x10002c91
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x8c]
mov edx, dword [eax]
mov eax, dword [ebp - 0x88]
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 - 0x98], 0xe3a39175
jmp 0x10002c91
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x84]
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 - 0x7c]
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 - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x51], al
mov dword [ebp - 0x98], 0xcaca0790
jmp 0x10002c91
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
sub edx, 0xbcbba702
sub edx, 1
add edx, 0xbcbba702
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, 0x9675fd44
mov ecx, 0x46df5703
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dl, byte [ebp - 0x51]
mov eax, 0xefdf8b1d
mov ecx, 0x39250095
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dword [ebp - 0x98], 0x3e17d995
jmp 0x10002c91
mov eax, dword [ebp - 0x78]
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 dword [ebp - 0x50], eax
mov dword [ebp - 0x98], 0xbc20fde5
jmp 0x10002c91
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
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, 0xd0108612
mov ecx, 0x3800551
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x50]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x49], al
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
mov edx, eax
add edx, 0xdfc6b2c8
sub edx, 1
sub edx, 0xdfc6b2c8
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, 0xd0108612
mov ecx, 0x534f80f6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dl, byte [ebp - 0x49]
mov eax, 0x89d6b9d8
mov ecx, 0x72e5349e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
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, 0x8e480f1a
mov ecx, 0x38097b84
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
sub edx, 0x5dcd82a2
sub edx, 1
add edx, 0x5dcd82a2
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, 0x8e480f1a
mov ecx, 0x4f3b51bb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
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, 0x4bb4403e
mov ecx, 0x17689cc2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov eax, dword [ebp - 0x48]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
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, 0x4bb4403e
mov ecx, 0x6820cd40
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dword [ebp - 0x98], 0x3e17d995
jmp 0x10002c91
mov eax, dword [ebp - 0x74]
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 - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x6c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x6c]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x3c]
add eax, 0x86722049
add eax, ecx
sub eax, 0x86722049
mov dword [ebp - 0x44], eax
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
sub edx, 0xb2f39613
sub edx, 1
add edx, 0xb2f39613
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, 0xba973a24
mov ecx, 0xafe19089
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dword [ebp - 0x98], 0xe19b58a6
jmp 0x10002c91
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
mov edx, eax
add edx, 0x325cff84
sub edx, 1
sub edx, 0x325cff84
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, 0xdb63184f
mov ecx, 0xe6a20548
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
mov edx, eax
add edx, 0x418d119a
sub edx, 1
sub edx, 0x418d119a
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, 0xdb63184f
mov ecx, 0x67f20df2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov eax, dword [ebp - 0x64]
mov word [eax], 0
mov dword [ebp - 0x98], 0xf33ee10e
jmp 0x10002c91
mov eax, dword [ebp - 0x64]
movzx eax, word [eax]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x98], 0x6bde0e17
jmp 0x10002c91
mov eax, dword [ebp - 0x38]
movzx esi, word [eax]
mov edx, dword [ebp - 0x40]
mov eax, 0xd59c871b
mov ecx, 0xdc486499
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
add eax, 0x937f064d
add eax, 0x18
sub eax, 0x937f064d
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov ax, word [eax + 0x14]
mov word [ebp - 0x2e], ax
mov dword [ebp - 0x98], 0xae4347c0
jmp 0x10002c91
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
mov edx, eax
sub edx, 0x5139944c
sub edx, 1
add edx, 0x5139944c
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, 0xf5966e17
mov ecx, 0x64336a7a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dword [ebp - 0x98], 0x7169a00d
jmp 0x10002c91
mov eax, dword [ebp - 0x5c]
mov dword [eax], 0
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x80]
mov edx, dword [eax]
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0x6f315b75
add edx, eax
add edx, 0x6f315b75
mov eax, dword [ebp - 0x5c]
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 - 0x58]
mov byte [eax], cl
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x98], 0xfc242375
jmp 0x10002c91
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xe6e1fddf
add edx, eax
sub edx, 0xe6e1fddf
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub ecx, 0xac786b8e
add ecx, eax
add ecx, 0xac786b8e
mov eax, dword [ebp - 0x60]
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.10007a40
add esp, 0xc
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x60]
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 - 0x1c], eax
mov dword [ebp - 0x98], 0x1eea4dc1
jmp 0x10002c91
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
sub edx, 0x2865d3cd
sub edx, 1
add edx, 0x2865d3cd
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, 0xc40fb6b0
mov ecx, 0x302abcf5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov esi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
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 - 0x58]
mov byte [eax], cl
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
mov edx, eax
sub edx, 0xf3f06d9c
sub edx, 1
add edx, 0xf3f06d9c
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, 0xc40fb6b0
mov ecx, 0xe402497d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dword [ebp - 0x98], 0x23821b46
jmp 0x10002c91
mov dword [ebp - 0x98], 0x38f98ba4
jmp 0x10002c91
mov eax, dword [ebp - 0x64]
mov ax, word [eax]
mov word [ebp - 0x16], ax
mov dword [ebp - 0x98], 0x3a56cee7
jmp 0x10002c91
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
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, 0xc67ae313
mov ecx, 0xab1aecd7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov cx, word [ebp - 0x16]
xor eax, eax
sub ax, 1
sub cx, ax
mov eax, dword [ebp - 0x64]
mov word [eax], cx
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
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, 0xc67ae313
mov ecx, 0x49dd6d4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dword [ebp - 0x98], 0x12496b8b
jmp 0x10002c91
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
mov edx, eax
sub edx, 0x41a37bcb
sub edx, 1
add edx, 0x41a37bcb
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, 0x37d808d2
mov ecx, 0x2d5b6857
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
add edx, 0xee1cad0d
sub edx, 1
sub edx, 0xee1cad0d
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, 0x37d808d2
mov ecx, 0x222d6d68
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dword [ebp - 0x98], 0xf33ee10e
jmp 0x10002c91
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
mov edx, eax
add edx, 0x3ad4f6e5
sub edx, 1
sub edx, 0x3ad4f6e5
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, 0xf8a43f54
mov ecx, 0x453a3a82
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
mov edx, eax
sub edx, 0x7f6c97e
sub edx, 1
add edx, 0x7f6c97e
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, 0xf8a43f54
mov ecx, 0x945434f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov dword [ebp - 0x98], 0xa9bae973
jmp 0x10002c91
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x98], 0xca3b5742
jmp 0x10002c91
mov eax, dword [ebp - 0x10]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x98], 0x3e17d995
jmp 0x10002c91
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
sub edx, 0x121b716d
sub edx, 1
add edx, 0x121b716d
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, 0xb06292e7
mov ecx, 0xb061b153
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
add edx, 0x65d7697d
sub edx, 1
sub edx, 0x65d7697d
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, 0xb06292e7
mov ecx, 0xd8cfb487
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x10002c91
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.10006ce0
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x98], 0x4e15e6c
jmp 0x10002c91
mov dword [ebp - 0x98], 0x46df5703
jmp 0x10002c91
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x50]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x98], 0x3800551
jmp 0x10002c91
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x98], 0x38097b84
jmp 0x10002c91
mov eax, dword [ebp - 0x74]
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 - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x6c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x80]
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x98], 0xa899ad96
jmp 0x10002c91
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov dword [ebp - 0x98], 0xe6a20548
jmp 0x10002c91
mov ax, word [ebp - 0x2e]
movzx eax, ax
mov ecx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
sub ecx, 0xe776051a
add ecx, eax
add ecx, 0xe776051a
mov eax, dword [ebp - 0x64]
movzx eax, word [eax]
imul edx, eax, 0x28
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x60]
mov dword [eax], ecx
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x98], 0x64336a7a
jmp 0x10002c91
mov esi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
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 - 0x58]
mov byte [eax], cl
mov dword [ebp - 0x98], 0x302abcf5
jmp 0x10002c91
mov ax, word [ebp - 0x16]
mov ax, word [ebp - 0x16]
mov ax, word [ebp - 0x16]
mov cx, word [ebp - 0x16]
sub cx, 0x3a01
add cx, 1
add cx, 0x3a01
mov eax, dword [ebp - 0x64]
mov word [eax], cx
mov dword [ebp - 0x98], 0xab1aecd7
jmp 0x10002c91
mov dword [ebp - 0x98], 0x2d5b6857
jmp 0x10002c91
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x98], 0x453a3a82
jmp 0x10002c91
mov dword [ebp - 0x98], 0xb061b153
jmp 0x10001387