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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x90
mov eax, dword [ebp + 8]
mov dword [ebp - 0x98], eax
mov eax, dword [0x10045800]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x94], 0xa4dd2dcf
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x9c], eax
sub eax, 0x83357918
je 0x100019d3
jmp 0x10001315
mov eax, dword [ebp - 0x9c]
sub eax, 0x860e1453
je 0x10001cde
jmp 0x1000132b
mov eax, dword [ebp - 0x9c]
sub eax, 0x9a63e9b4
je 0x100022a2
jmp 0x10001341
mov eax, dword [ebp - 0x9c]
sub eax, 0x9b3825f8
je 0x10001931
jmp 0x10001357
mov eax, dword [ebp - 0x9c]
sub eax, 0x9fad45b7
je 0x10001a66
jmp 0x1000136d
mov eax, dword [ebp - 0x9c]
sub eax, 0xa4dd2dcf
je 0x1000182c
jmp 0x10001383
mov eax, dword [ebp - 0x9c]
sub eax, 0xa64dfb81
je 0x100024c0
jmp 0x10001399
mov eax, dword [ebp - 0x9c]
sub eax, 0xa9ebd127
je 0x1000243b
jmp 0x100013af
mov eax, dword [ebp - 0x9c]
sub eax, 0xadeea1a5
je 0x100019e2
jmp 0x100013c5
mov eax, dword [ebp - 0x9c]
sub eax, 0xb09eac15
je 0x10001d86
jmp 0x100013db
mov eax, dword [ebp - 0x9c]
sub eax, 0xb44d9b4d
je 0x10002129
jmp 0x100013f1
mov eax, dword [ebp - 0x9c]
sub eax, 0xbee095a0
je 0x100023c2
jmp 0x10001407
mov eax, dword [ebp - 0x9c]
sub eax, 0xc32ec186
je 0x100024d2
jmp 0x1000141d
mov eax, dword [ebp - 0x9c]
sub eax, 0xc524194f
je 0x10001922
jmp 0x10001433
mov eax, dword [ebp - 0x9c]
sub eax, 0xc59dbda1
je 0x10001c8d
jmp 0x10001449
mov eax, dword [ebp - 0x9c]
sub eax, 0xc62b003a
je 0x10001c07
jmp 0x1000145f
mov eax, dword [ebp - 0x9c]
sub eax, 0xc925189e
je 0x10002556
jmp 0x10001475
mov eax, dword [ebp - 0x9c]
sub eax, 0xca92af01
je 0x100022d6
jmp 0x1000148b
mov eax, dword [ebp - 0x9c]
sub eax, 0xcc3156b2
je 0x10002089
jmp 0x100014a1
mov eax, dword [ebp - 0x9c]
sub eax, 0xcc8985c2
je 0x100022b1
jmp 0x100014b7
mov eax, dword [ebp - 0x9c]
sub eax, 0xd5e7866c
je 0x10002577
jmp 0x100014cd
mov eax, dword [ebp - 0x9c]
sub eax, 0xd836bc73
je 0x10002541
jmp 0x100014e3
mov eax, dword [ebp - 0x9c]
sub eax, 0xdd996c16
je 0x10001c1e
jmp 0x100014f9
mov eax, dword [ebp - 0x9c]
sub eax, 0xe5d1f260
je 0x10001e63
jmp 0x1000150f
mov eax, dword [ebp - 0x9c]
sub eax, 0xe6ea3e91
je 0x10002259
jmp 0x10001525
mov eax, dword [ebp - 0x9c]
sub eax, 0xeca59175
je 0x10001eab
jmp 0x1000153b
mov eax, dword [ebp - 0x9c]
sub eax, 0xf10284d3
je 0x10001d6f
jmp 0x10001551
mov eax, dword [ebp - 0x9c]
sub eax, 0xf320fcd4
je 0x10001ced
jmp 0x10001567
mov eax, dword [ebp - 0x9c]
sub eax, 0xfa179844
je 0x100023f2
jmp 0x1000157d
mov eax, dword [ebp - 0x9c]
sub eax, 0x1f92a9d
je 0x10001a33
jmp 0x10001593
mov eax, dword [ebp - 0x9c]
sub eax, 0x9fcd850
je 0x10001fb2
jmp 0x100015a9
mov eax, dword [ebp - 0x9c]
sub eax, 0xa47128b
je 0x100024b1
jmp 0x100015bf
mov eax, dword [ebp - 0x9c]
sub eax, 0xb02f44e
je 0x100025e3
jmp 0x100015d5
mov eax, dword [ebp - 0x9c]
sub eax, 0xb528134
je 0x100023d1
jmp 0x100015eb
mov eax, dword [ebp - 0x9c]
sub eax, 0xd54598f
je 0x10001ad0
jmp 0x10001601
mov eax, dword [ebp - 0x9c]
sub eax, 0x179fbe02
je 0x10001dfc
jmp 0x10001617
mov eax, dword [ebp - 0x9c]
sub eax, 0x183c0a3d
je 0x100022ef
jmp 0x1000162d
mov eax, dword [ebp - 0x9c]
sub eax, 0x1cf4a031
je 0x10002614
jmp 0x10001643
mov eax, dword [ebp - 0x9c]
sub eax, 0x1ec13bf4
je 0x10002015
jmp 0x10001659
mov eax, dword [ebp - 0x9c]
sub eax, 0x1ffdf84f
je 0x10002038
jmp 0x1000166f
mov eax, dword [ebp - 0x9c]
sub eax, 0x2519108a
je 0x10001bc3
jmp 0x10001685
mov eax, dword [ebp - 0x9c]
sub eax, 0x2710684a
je 0x10001bd2
jmp 0x1000169b
mov eax, dword [ebp - 0x9c]
sub eax, 0x2b899e2a
je 0x1000234f
jmp 0x100016b1
mov eax, dword [ebp - 0x9c]
sub eax, 0x3073356b
je 0x10001adf
jmp 0x100016c7
mov eax, dword [ebp - 0x9c]
sub eax, 0x31862048
je 0x10002138
jmp 0x100016dd
mov eax, dword [ebp - 0x9c]
sub eax, 0x3d1e02c8
je 0x10001e72
jmp 0x100016f3
mov eax, dword [ebp - 0x9c]
sub eax, 0x3e91e7d5
je 0x100025d4
jmp 0x10001709
mov eax, dword [ebp - 0x9c]
sub eax, 0x3f294e58
je 0x10001c3c
jmp 0x1000171f
mov eax, dword [ebp - 0x9c]
sub eax, 0x4419d04a
je 0x100022fe
jmp 0x10001735
mov eax, dword [ebp - 0x9c]
sub eax, 0x45b78455
je 0x10001fc1
jmp 0x1000174b
mov eax, dword [ebp - 0x9c]
sub eax, 0x4f21d504
je 0x1000189a
jmp 0x10001761
mov eax, dword [ebp - 0x9c]
sub eax, 0x54bf0b74
je 0x10001f18
jmp 0x10001777
mov eax, dword [ebp - 0x9c]
sub eax, 0x5c7cebc9
je 0x10001e8b
jmp 0x1000178d
mov eax, dword [ebp - 0x9c]
sub eax, 0x60223b98
je 0x10001b30
jmp 0x100017a3
mov eax, dword [ebp - 0x9c]
sub eax, 0x65029104
je 0x10001d3f
jmp 0x100017b9
mov eax, dword [ebp - 0x9c]
sub eax, 0x70792645
je 0x100021e3
jmp 0x100017cf
mov eax, dword [ebp - 0x9c]
sub eax, 0x70c622d2
je 0x100024e1
jmp 0x100017e5
mov eax, dword [ebp - 0x9c]
sub eax, 0x7838574a
je 0x10002532
jmp 0x100017fb
mov eax, dword [ebp - 0x9c]
sub eax, 0x79ec0356
je 0x10001ecf
jmp 0x10001811
mov eax, dword [ebp - 0x9c]
sub eax, 0x7fcce84f
je 0x10001be9
jmp 0x10001827
jmp 0x1000261e
mov ecx, dword [0x10046b40]
mov eax, dword [0x10046b3c]
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, 0xc32ec186
mov ecx, 0x4f21d504
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
push eax
sub esp, 0x100
mov eax, esp
mov dword [ebp - 0x80], eax
push eax
mov eax, esp
mov dword [ebp - 0x7c], eax
mov ecx, dword [0x10046b40]
mov eax, dword [0x10046b3c]
mov edx, ecx
add edx, 0x5bd9969c
sub edx, 1
sub edx, 0x5bd9969c
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, 0xc32ec186
mov ecx, 0xc524194f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0x9b3825f8
jmp 0x1000261e
mov eax, dword [ebp - 0x98]
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
push eax
mov ecx, esp
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x84], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0x1c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000bd70
add esp, 0xc
mov eax, dword [ebp - 0x84]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x8c], eax
mov eax, 0x83357918
mov ecx, 0xadeea1a5
cmp dword [ebp - 0x8c], 0
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0xa64dfb81
jmp 0x1000261e
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x88]
lea eax, [ebp - 0x1c]
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 - 0x1c]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x94], 0x1f92a9d
jmp 0x1000261e
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x54]
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 - 0x80]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x94], 0x9fad45b7
jmp 0x1000261e
mov eax, dword [ebp - 0x50]
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 - 0x7c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x7c]
mov esi, 0xffffffff
mov eax, 0x3073356b
mov ecx, 0xd54598f
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0xa64dfb81
jmp 0x1000261e
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
mov edx, eax
add edx, 0xc5c74924
sub edx, 1
sub edx, 0xc5c74924
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, 0x70c622d2
mov ecx, 0x60223b98
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov eax, dword [ebp - 0x7c]
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 - 0x78]
mov dword [eax], ecx
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
mov edx, eax
sub edx, 0x27aba5bb
sub edx, 1
add edx, 0x27aba5bb
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, 0x70c622d2
mov ecx, 0x2519108a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0x2710684a
jmp 0x1000261e
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x94], 0x7fcce84f
jmp 0x1000261e
mov edx, dword [ebp - 0x4c]
mov eax, 0xc62b003a
mov ecx, 0xf320fcd4
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x94], 0xdd996c16
jmp 0x1000261e
mov eax, dword [ebp - 0x48]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x94], 0x3f294e58
jmp 0x1000261e
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
mov edx, eax
add edx, 0x9fc38651
sub edx, 1
sub edx, 0x9fc38651
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, 0x7838574a
mov ecx, 0xc59dbda1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
mov edx, eax
sub edx, 0x4aca488
sub edx, 1
add edx, 0x4aca488
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, 0x7838574a
mov ecx, 0x860e1453
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0xa64dfb81
jmp 0x1000261e
mov eax, dword [ebp - 0x78]
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 - 0x74]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x94], 0x65029104
jmp 0x1000261e
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov edx, dword [eax + 0x3c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x6c]
mov dword [eax], ecx
mov dword [ebp - 0x94], 0xf10284d3
jmp 0x1000261e
mov eax, dword [ebp - 0x68]
mov word [eax], 0
mov dword [ebp - 0x94], 0xb09eac15
jmp 0x1000261e
mov ecx, dword [0x10046b40]
mov eax, dword [0x10046b3c]
mov edx, ecx
sub edx, 0xc4cf4e4f
sub edx, 1
add edx, 0xc4cf4e4f
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, 0xd836bc73
mov ecx, 0x179fbe02
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov eax, dword [ebp - 0x68]
movzx eax, word [eax]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov ax, word [eax + 6]
mov word [ebp - 0x3a], ax
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
mov edx, eax
sub edx, 0xb97f9db
sub edx, 1
add edx, 0xb97f9db
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, 0xd836bc73
mov ecx, 0xe5d1f260
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0x3d1e02c8
jmp 0x1000261e
mov ax, word [ebp - 0x3a]
movzx eax, ax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x94], 0x5c7cebc9
jmp 0x1000261e
mov edx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x38]
mov eax, 0x4419d04a
mov ecx, 0xeca59175
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
sub eax, 0x758b4f70
add eax, 0x18
add eax, 0x758b4f70
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x94], 0x79ec0356
jmp 0x1000261e
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
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, 0xc925189e
mov ecx, 0x54bf0b74
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
movzx ecx, word [eax + 0x14]
mov eax, dword [ebp - 0x34]
add eax, 0x9cc5bce2
add eax, ecx
sub eax, 0x9cc5bce2
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x68]
movzx eax, word [eax]
mov dword [ebp - 0x2c], eax
mov ecx, dword [0x10046b40]
mov eax, dword [0x10046b3c]
mov edx, ecx
add edx, 0xaf607ebd
sub edx, 1
sub edx, 0xaf607ebd
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, 0xc925189e
mov ecx, 0x9fcd850
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0x45b78455
jmp 0x1000261e
mov eax, dword [ebp - 0x2c]
imul edx, eax, 0x28
mov ecx, dword [ebp - 0x30]
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 - 0x64]
mov dword [eax], ecx
mov eax, dword [ebp - 0x64]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100173b0
call fcn.1000e0e0
add esp, 8
mov edx, eax
mov eax, 0x1ec13bf4
mov ecx, 0x70792645
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
add eax, 8
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x94], 0x1ffdf84f
jmp 0x1000261e
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
mov edx, eax
sub edx, 0x5fe34c68
sub edx, 1
add edx, 0x5fe34c68
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, 0xd5e7866c
mov ecx, 0xcc3156b2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, edx
xor edx, edx
sub edx, esi
add eax, edx
xor edx, edx
sub edx, eax
mov eax, dword [ebp - 0x60]
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 - 0x5c]
mov byte [eax], cl
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x24], eax
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
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, 0xd5e7866c
mov ecx, 0xb44d9b4d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0x31862048
jmp 0x1000261e
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 0x24]
add edx, 0x82e397dd
add edx, eax
sub edx, 0x82e397dd
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x64]
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 - 0x64]
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.1000bed0
add esp, 0xc
mov eax, dword [ebp - 0x60]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x90]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x60]
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 - 0x5c]
mov byte [eax], cl
mov dword [ebp - 0x94], 0x70792645
jmp 0x1000261e
mov ecx, dword [0x10046b40]
mov eax, dword [0x10046b3c]
mov edx, ecx
sub edx, 0xf02d37bd
sub edx, 1
add edx, 0xf02d37bd
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, 0x3e91e7d5
mov ecx, 0xe6ea3e91
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
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, 0x3e91e7d5
mov ecx, 0x9a63e9b4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0xcc8985c2
jmp 0x1000261e
mov eax, dword [ebp - 0x68]
mov ax, word [eax]
sub ax, 0x19cb
add ax, 1
add ax, 0x19cb
mov word [ebp - 0x1e], ax
mov dword [ebp - 0x94], 0xca92af01
jmp 0x1000261e
mov eax, dword [ebp - 0x68]
mov cx, word [ebp - 0x1e]
mov word [eax], cx
mov dword [ebp - 0x94], 0x183c0a3d
jmp 0x1000261e
mov dword [ebp - 0x94], 0xb09eac15
jmp 0x1000261e
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
mov edx, eax
sub edx, 0xd0c048ff
sub edx, 1
add edx, 0xd0c048ff
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, 0xb02f44e
mov ecx, 0x2b899e2a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
mov edx, eax
add edx, 0x8592f9fa
sub edx, 1
sub edx, 0x8592f9fa
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, 0xb02f44e
mov ecx, 0xbee095a0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0xb528134
jmp 0x1000261e
mov eax, dword [ebp - 0x88]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x94], 0xfa179844
jmp 0x1000261e
mov eax, dword [0x10046b40]
mov ecx, dword [0x10046b3c]
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, 0x1cf4a031
mov ecx, 0xa9ebd127
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov ecx, dword [0x10046b40]
mov eax, dword [0x10046b3c]
mov edx, ecx
sub edx, 0xb9f1ca4f
sub edx, 1
add edx, 0xb9f1ca4f
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, 0x1cf4a031
mov ecx, 0xa47128b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x94], eax
jmp 0x1000261e
mov dword [ebp - 0x94], 0xa64dfb81
jmp 0x1000261e
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000b170
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x94], 0x4f21d504
jmp 0x1000261e
mov eax, dword [ebp - 0x7c]
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 - 0x78]
mov dword [eax], ecx
mov dword [ebp - 0x94], 0x60223b98
jmp 0x1000261e
mov dword [ebp - 0x94], 0xc59dbda1
jmp 0x1000261e
mov eax, dword [ebp - 0x68]
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x94], 0x179fbe02
jmp 0x1000261e
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x94], 0x54bf0b74
jmp 0x1000261e
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xc8f06849
add edx, eax
sub edx, 0xc8f06849
mov eax, dword [ebp - 0x60]
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 - 0x5c]
mov byte [eax], cl
mov dword [ebp - 0x94], 0xcc3156b2
jmp 0x1000261e
mov dword [ebp - 0x94], 0xe6ea3e91
jmp 0x1000261e
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x94], 0x2b899e2a
jmp 0x1000261e
mov dword [ebp - 0x94], 0xa9ebd127
jmp 0x100012f9