Function at 0x1000a850
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 [0x10085c80]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x98], 0x8e5e8d00
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0xa0], eax
sub eax, 0x83be13b7
je 0x1000b90b
jmp 0x1000a894
mov eax, dword [ebp - 0xa0]
sub eax, 0x8448d9ab
je 0x1000b12a
jmp 0x1000a8aa
mov eax, dword [ebp - 0xa0]
sub eax, 0x85fc9ce7
je 0x1000bd79
jmp 0x1000a8c0
mov eax, dword [ebp - 0xa0]
sub eax, 0x867d769c
je 0x1000ba8c
jmp 0x1000a8d6
mov eax, dword [ebp - 0xa0]
sub eax, 0x86a8ba35
je 0x1000bac2
jmp 0x1000a8ec
mov eax, dword [ebp - 0xa0]
sub eax, 0x876193a7
je 0x1000b539
jmp 0x1000a902
mov eax, dword [ebp - 0xa0]
sub eax, 0x87e95a25
je 0x1000b886
jmp 0x1000a918
mov eax, dword [ebp - 0xa0]
sub eax, 0x8c983914
je 0x1000afb2
jmp 0x1000a92e
mov eax, dword [ebp - 0xa0]
sub eax, 0x8e5e8d00
je 0x1000aded
jmp 0x1000a944
mov eax, dword [ebp - 0xa0]
sub eax, 0x9546b136
je 0x1000b548
jmp 0x1000a95a
mov eax, dword [ebp - 0xa0]
sub eax, 0x985efb18
je 0x1000bd28
jmp 0x1000a970
mov eax, dword [ebp - 0xa0]
sub eax, 0x9a7f7011
je 0x1000b9a5
jmp 0x1000a986
mov eax, dword [ebp - 0xa0]
sub eax, 0x9dec5768
je 0x1000b9b4
jmp 0x1000a99c
mov eax, dword [ebp - 0xa0]
sub eax, 0x9f3eee38
je 0x1000b1a7
jmp 0x1000a9b2
mov eax, dword [ebp - 0xa0]
sub eax, 0xa138d386
je 0x1000b454
jmp 0x1000a9c8
mov eax, dword [ebp - 0xa0]
sub eax, 0xa78d9b5d
je 0x1000bd0a
jmp 0x1000a9de
mov eax, dword [ebp - 0xa0]
sub eax, 0xa7d99e9c
je 0x1000b5ab
jmp 0x1000a9f4
mov eax, dword [ebp - 0xa0]
sub eax, 0xa8639859
je 0x1000bc97
jmp 0x1000aa0a
mov eax, dword [ebp - 0xa0]
sub eax, 0xad712ebe
je 0x1000bb29
jmp 0x1000aa20
mov eax, dword [ebp - 0xa0]
sub eax, 0xb0f44cb8
je 0x1000ae05
jmp 0x1000aa36
mov eax, dword [ebp - 0xa0]
sub eax, 0xb42e1ca7
je 0x1000b285
jmp 0x1000aa4c
mov eax, dword [ebp - 0xa0]
sub eax, 0xb79b8317
je 0x1000af46
jmp 0x1000aa62
mov eax, dword [ebp - 0xa0]
sub eax, 0xbe23a71f
je 0x1000b139
jmp 0x1000aa78
mov eax, dword [ebp - 0xa0]
sub eax, 0xc2f23abc
je 0x1000bca9
jmp 0x1000aa8e
mov eax, dword [ebp - 0xa0]
sub eax, 0xc3dbf5fb
je 0x1000bab3
jmp 0x1000aaa4
mov eax, dword [ebp - 0xa0]
sub eax, 0xc656ea30
je 0x1000b200
jmp 0x1000aaba
mov eax, dword [ebp - 0xa0]
sub eax, 0xcb8b9dd5
je 0x1000b855
jmp 0x1000aad0
mov eax, dword [ebp - 0xa0]
sub eax, 0xce15e63a
je 0x1000b028
jmp 0x1000aae6
mov eax, dword [ebp - 0xa0]
sub eax, 0xce8bb8c4
je 0x1000bc53
jmp 0x1000aafc
mov eax, dword [ebp - 0xa0]
sub eax, 0xd0a1aad6
je 0x1000b463
jmp 0x1000ab12
mov eax, dword [ebp - 0xa0]
sub eax, 0xd249eb2b
je 0x1000b557
jmp 0x1000ab28
mov eax, dword [ebp - 0xa0]
sub eax, 0xd8510cc6
je 0x1000bd58
jmp 0x1000ab3e
mov eax, dword [ebp - 0xa0]
sub eax, 0xe86ef681
je 0x1000ae56
jmp 0x1000ab54
mov eax, dword [ebp - 0xa0]
sub eax, 0xe9688c7d
je 0x1000b755
jmp 0x1000ab6a
mov eax, dword [ebp - 0xa0]
sub eax, 0xead20ca9
je 0x1000b5ed
jmp 0x1000ab80
mov eax, dword [ebp - 0xa0]
sub eax, 0xec8cc42c
je 0x1000b0b1
jmp 0x1000ab96
mov eax, dword [ebp - 0xa0]
sub eax, 0xee5e3081
je 0x1000baea
jmp 0x1000abac
mov eax, dword [ebp - 0xa0]
sub eax, 0xf07b06e4
je 0x1000bcf8
jmp 0x1000abc2
mov eax, dword [ebp - 0xa0]
sub eax, 0x6549977
je 0x1000b33b
jmp 0x1000abd8
mov eax, dword [ebp - 0xa0]
sub eax, 0xb55b711
je 0x1000b6cc
jmp 0x1000abee
mov eax, dword [ebp - 0xa0]
sub eax, 0x13050e47
je 0x1000b67b
jmp 0x1000ac04
mov eax, dword [ebp - 0xa0]
sub eax, 0x14b00f71
je 0x1000b4d9
jmp 0x1000ac1a
mov eax, dword [ebp - 0xa0]
sub eax, 0x153a1f84
je 0x1000af73
jmp 0x1000ac30
mov eax, dword [ebp - 0xa0]
sub eax, 0x24364609
je 0x1000bd67
jmp 0x1000ac46
mov eax, dword [ebp - 0xa0]
sub eax, 0x2e8ea9ce
je 0x1000ba2a
jmp 0x1000ac5c
mov eax, dword [ebp - 0xa0]
sub eax, 0x332d45af
je 0x1000b34a
jmp 0x1000ac72
mov eax, dword [ebp - 0xa0]
sub eax, 0x37bd86be
je 0x1000bbe0
jmp 0x1000ac88
mov eax, dword [ebp - 0xa0]
sub eax, 0x37e6bf5c
je 0x1000b639
jmp 0x1000ac9e
mov eax, dword [ebp - 0xa0]
sub eax, 0x395e5f3c
je 0x1000b3d6
jmp 0x1000acb4
mov eax, dword [ebp - 0xa0]
sub eax, 0x3a3c5b5f
je 0x1000ba7d
jmp 0x1000acca
mov eax, dword [ebp - 0xa0]
sub eax, 0x3b3ef970
je 0x1000b368
jmp 0x1000ace0
mov eax, dword [ebp - 0xa0]
sub eax, 0x3e758d01
je 0x1000b657
jmp 0x1000acf6
mov eax, dword [ebp - 0xa0]
sub eax, 0x429b7b1e
je 0x1000bb1a
jmp 0x1000ad0c
mov eax, dword [ebp - 0xa0]
sub eax, 0x4c89c2a3
je 0x1000b7bb
jmp 0x1000ad22
mov eax, dword [ebp - 0xa0]
sub eax, 0x4d5c5e5b
je 0x1000b614
jmp 0x1000ad38
mov eax, dword [ebp - 0xa0]
sub eax, 0x5ce5152e
je 0x1000bbf1
jmp 0x1000ad4e
mov eax, dword [ebp - 0xa0]
sub eax, 0x627b4123
je 0x1000b20f
jmp 0x1000ad64
mov eax, dword [ebp - 0xa0]
sub eax, 0x6aca417a
je 0x1000bb72
jmp 0x1000ad7a
mov eax, dword [ebp - 0xa0]
sub eax, 0x702ed1e6
je 0x1000b764
jmp 0x1000ad90
mov eax, dword [ebp - 0xa0]
sub eax, 0x72d145b6
je 0x1000af64
jmp 0x1000ada6
mov eax, dword [ebp - 0xa0]
sub eax, 0x75819f83
je 0x1000b5fc
jmp 0x1000adbc
mov eax, dword [ebp - 0xa0]
sub eax, 0x76b2fb38
je 0x1000b0c0
jmp 0x1000add2
mov eax, dword [ebp - 0xa0]
sub eax, 0x7fe3fede
je 0x1000b95c
jmp 0x1000ade8
jmp 0x1000bd83
push eax
mov eax, esp
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x98], 0xb0f44cb8
jmp 0x1000bd83
mov eax, dword [0x10087144]
mov ecx, dword [0x10087140]
mov edx, eax
sub edx, 0x7b02968b
sub edx, 1
add edx, 0x7b02968b
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, 0x5ce5152e
mov ecx, 0xe86ef681
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov eax, dword [ebp - 0x9c]
push eax
sub esp, 0x100
mov ecx, esp
mov dword [ebp - 0x84], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x80], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x7c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x78], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x74], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x70], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x6c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x68], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x64], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x8c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x18]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10025c30
add esp, 0xc
mov eax, dword [ebp - 0x8c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 0
setne al
and al, 1
mov byte [ebp - 0x59], al
mov eax, dword [0x10087144]
mov ecx, dword [0x10087140]
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, 0x5ce5152e
mov ecx, 0xb79b8317
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dl, byte [ebp - 0x59]
mov eax, 0x72d145b6
mov ecx, 0x153a1f84
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dword [ebp - 0x98], 0xad712ebe
jmp 0x1000bd83
mov ecx, dword [ebp - 0x94]
mov edx, dword [ebp - 0x90]
lea eax, [ebp - 0x18]
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 - 0x18]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x98], 0x8c983914
jmp 0x1000bd83
mov ecx, dword [0x10087144]
mov eax, dword [0x10087140]
mov edx, ecx
add edx, 0x7a2f11
sub edx, 1
sub edx, 0x7a2f11
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, 0xce8bb8c4
mov ecx, 0xce15e63a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x58]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x94]
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]
mov dword [ebp - 0x54], eax
mov eax, dword [0x10087144]
mov ecx, dword [0x10087140]
mov edx, eax
add edx, 0x88940ab0
sub edx, 1
sub edx, 0x88940ab0
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, 0xce8bb8c4
mov ecx, 0xec8cc42c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x76b2fb38
jmp 0x1000bd83
mov eax, dword [ebp - 0x54]
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 edx, dword [ebp - 0x80]
mov esi, 0xffffffff
mov eax, 0xbe23a71f
mov ecx, 0x8448d9ab
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dword [ebp - 0x98], 0xad712ebe
jmp 0x1000bd83
mov ecx, dword [0x10087144]
mov eax, dword [0x10087140]
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, 0xa8639859
mov ecx, 0x9f3eee38
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov eax, dword [0x10087144]
mov ecx, dword [0x10087140]
mov edx, eax
sub edx, 0x85f4ad96
sub edx, 1
add edx, 0x85f4ad96
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, 0xa8639859
mov ecx, 0xc656ea30
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x627b4123
jmp 0x1000bd83
mov ecx, dword [0x10087144]
mov eax, dword [0x10087140]
mov edx, ecx
add edx, 0x2d603c95
sub edx, 1
sub edx, 0x2d603c95
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, 0xc2f23abc
mov ecx, 0xb42e1ca7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov eax, dword [ebp - 0x50]
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 ecx, dword [0x10087144]
mov eax, dword [0x10087140]
mov edx, ecx
sub edx, 0x44b41530
sub edx, 1
add edx, 0x44b41530
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, 0xc2f23abc
mov ecx, 0x6549977
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x332d45af
jmp 0x1000bd83
mov edx, dword [ebp - 0x7c]
mov eax, 0x3b3ef970
mov ecx, 0xd249eb2b
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov ecx, dword [0x10087144]
mov eax, dword [0x10087140]
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, 0xf07b06e4
mov ecx, 0x395e5f3c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov ecx, dword [0x10087144]
mov eax, dword [0x10087140]
mov edx, ecx
sub edx, 0xa80a550c
sub edx, 1
add edx, 0xa80a550c
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, 0xf07b06e4
mov ecx, 0xa138d386
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dword [ebp - 0x98], 0xd0a1aad6
jmp 0x1000bd83
mov ecx, dword [0x10087144]
mov eax, dword [0x10087140]
mov edx, ecx
sub edx, 0xc031e35b
sub edx, 1
add edx, 0xc031e35b
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, 0xa78d9b5d
mov ecx, 0x14b00f71
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov eax, dword [ebp - 0x4c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x10087144]
mov ecx, dword [0x10087140]
mov edx, eax
add edx, 0xefd8b369
sub edx, 1
sub edx, 0xefd8b369
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, 0xa78d9b5d
mov ecx, 0x876193a7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x9546b136
jmp 0x1000bd83
mov dword [ebp - 0x98], 0xad712ebe
jmp 0x1000bd83
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 eax, dword [eax]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x98], 0xa7d99e9c
jmp 0x1000bd83
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x48]
mov dword [eax], ecx
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
sub ecx, 0x97b69f04
add ecx, eax
add ecx, 0x97b69f04
mov eax, dword [ebp - 0x70]
mov dword [eax], ecx
mov eax, dword [ebp - 0x6c]
mov word [eax], 0
mov dword [ebp - 0x98], 0xead20ca9
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x75819f83
jmp 0x1000bd83
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x98], 0x4d5c5e5b
jmp 0x1000bd83
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
movzx ecx, word [eax + 6]
mov eax, dword [ebp - 0x44]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x3d], al
mov dword [ebp - 0x98], 0x37e6bf5c
jmp 0x1000bd83
mov dl, byte [ebp - 0x3d]
mov eax, 0x86a8ba35
mov ecx, 0x3e758d01
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
add eax, 0xef7eefe3
add eax, 0x18
sub eax, 0xef7eefe3
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x98], 0x13050e47
jmp 0x1000bd83
mov eax, dword [0x10087144]
mov ecx, dword [0x10087140]
mov edx, eax
sub edx, 0x49540a23
sub edx, 1
add edx, 0x49540a23
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, 0x985efb18
mov ecx, 0xb55b711
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
movzx ecx, word [eax + 0x14]
mov eax, dword [ebp - 0x3c]
add eax, 0xad976851
add eax, ecx
sub eax, 0xad976851
mov dword [ebp - 0x38], eax
mov ecx, dword [0x10087144]
mov eax, dword [0x10087140]
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, 0x985efb18
mov ecx, 0xe9688c7d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x702ed1e6
jmp 0x1000bd83
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0x38]
sub ecx, 0x4a250506
add ecx, eax
add ecx, 0x4a250506
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], 0x10033a0e
call fcn.10029590
add esp, 8
mov edx, eax
mov eax, 0x4c89c2a3
mov ecx, 0x83be13b7
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
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]
sub edx, 0xabde0c50
add edx, eax
add edx, 0xabde0c50
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 eax, dword [eax]
mov ecx, dword [ebp - 0x68]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
sub eax, 0xa9d87f2d
add eax, ecx
add eax, 0xa9d87f2d
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x98], 0xcb8b9dd5
jmp 0x1000bd83
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 0x30]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x98], 0x87e95a25
jmp 0x1000bd83
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10025d90
add esp, 0xc
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x88]
mov esi, dword [eax]
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub esi, 0x5cf36269
add esi, eax
add esi, 0x5cf36269
mov eax, dword [ebp - 0x64]
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 - 0x98], 0x83be13b7
jmp 0x1000bd83
mov eax, dword [0x10087144]
mov ecx, dword [0x10087140]
mov edx, eax
add edx, 0x79dc554d
sub edx, 1
sub edx, 0x79dc554d
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, 0xd8510cc6
mov ecx, 0x7fe3fede
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov eax, dword [0x10087144]
mov ecx, dword [0x10087140]
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, 0xd8510cc6
mov ecx, 0x9a7f7011
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x9dec5768
jmp 0x1000bd83
mov ecx, dword [0x10087144]
mov eax, dword [0x10087140]
mov edx, ecx
sub edx, 0x1e7171
sub edx, 1
add edx, 0x1e7171
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, 0x24364609
mov ecx, 0x2e8ea9ce
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov eax, dword [ebp - 0x6c]
mov ax, word [eax]
mov word [ebp - 0x1e], ax
mov eax, dword [0x10087144]
mov ecx, dword [0x10087140]
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, 0x24364609
mov ecx, 0x3a3c5b5f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x867d769c
jmp 0x1000bd83
mov cx, word [ebp - 0x1e]
sub cx, 0xd62
add cx, 1
add cx, 0xd62
mov eax, dword [ebp - 0x6c]
mov word [eax], cx
mov dword [ebp - 0x98], 0xc3dbf5fb
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x75819f83
jmp 0x1000bd83
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 - 0x1c], eax
mov dword [ebp - 0x98], 0xee5e3081
jmp 0x1000bd83
mov eax, dword [ebp - 0x1c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x90]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x98], 0x429b7b1e
jmp 0x1000bd83
mov dword [ebp - 0x98], 0xad712ebe
jmp 0x1000bd83
mov eax, dword [0x10087144]
mov ecx, dword [0x10087140]
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, 0x85fc9ce7
mov ecx, 0x6aca417a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov ecx, dword [0x10087144]
mov eax, dword [0x10087140]
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, 0x85fc9ce7
mov ecx, 0x37bd86be
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x98], eax
jmp 0x1000bd83
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.10024e90
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x8c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x18]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10025c30
add esp, 0xc
mov eax, dword [ebp - 0x8c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x98], 0xe86ef681
jmp 0x1000bd83
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x58]
mov dword [eax], ecx
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x94]
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]
mov dword [ebp - 0x98], 0xce15e63a
jmp 0x1000bd83
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x98], 0x9f3eee38
jmp 0x1000bd83
mov eax, dword [ebp - 0x50]
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 dword [ebp - 0x98], 0xb42e1ca7
jmp 0x1000bd83
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x98], 0x395e5f3c
jmp 0x1000bd83
mov eax, dword [ebp - 0x4c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x98], 0x14b00f71
jmp 0x1000bd83
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x98], 0xb55b711
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x7fe3fede
jmp 0x1000bd83
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x98], 0x2e8ea9ce
jmp 0x1000bd83
mov dword [ebp - 0x98], 0x6aca417a
jmp 0x1000a878