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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x8c
mov eax, dword [ebp + 8]
mov dword [ebp - 0x90], eax
mov eax, dword [0x10094400]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x8c], 0xbfd0dc06
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x94], eax
sub eax, 0x8512a410
je 0x100018d4
jmp 0x10001124
mov eax, dword [ebp - 0x94]
sub eax, 0x89ad2728
je 0x1000213f
jmp 0x1000113a
mov eax, dword [ebp - 0x94]
sub eax, 0x965ed030
je 0x1000164c
jmp 0x10001150
mov eax, dword [ebp - 0x94]
sub eax, 0x9739cc51
je 0x10001f08
jmp 0x10001166
mov eax, dword [ebp - 0x94]
sub eax, 0x9a2a5370
je 0x10001c4f
jmp 0x1000117c
mov eax, dword [ebp - 0x94]
sub eax, 0x9c512348
je 0x100020d8
jmp 0x10001192
mov eax, dword [ebp - 0x94]
sub eax, 0x9d5e65f4
je 0x10001adc
jmp 0x100011a8
mov eax, dword [ebp - 0x94]
sub eax, 0xa0fafa5c
je 0x10001f68
jmp 0x100011be
mov eax, dword [ebp - 0x94]
sub eax, 0xa1459719
je 0x100018a7
jmp 0x100011d4
mov eax, dword [ebp - 0x94]
sub eax, 0xad9f833c
je 0x10001890
jmp 0x100011ea
mov eax, dword [ebp - 0x94]
sub eax, 0xb347a98d
je 0x10001e5d
jmp 0x10001200
mov eax, dword [ebp - 0x94]
sub eax, 0xb35ae248
je 0x100017fb
jmp 0x10001216
mov eax, dword [ebp - 0x94]
sub eax, 0xb864ce00
je 0x1000185b
jmp 0x1000122c
mov eax, dword [ebp - 0x94]
sub eax, 0xb8bb25c4
je 0x1000180a
jmp 0x10001242
mov eax, dword [ebp - 0x94]
sub eax, 0xba70fa73
je 0x10001e4e
jmp 0x10001258
mov eax, dword [ebp - 0x94]
sub eax, 0xbc9ec9dd
je 0x100019bf
jmp 0x1000126e
mov eax, dword [ebp - 0x94]
sub eax, 0xbfd0dc06
je 0x10001575
jmp 0x10001284
mov eax, dword [ebp - 0x94]
sub eax, 0xc406163b
je 0x10001dd6
jmp 0x1000129a
mov eax, dword [ebp - 0x94]
sub eax, 0xc64bb6ff
je 0x10001d59
jmp 0x100012b0
mov eax, dword [ebp - 0x94]
sub eax, 0xce51e956
je 0x10001a39
jmp 0x100012c6
mov eax, dword [ebp - 0x94]
sub eax, 0xda48e8fd
je 0x10001d68
jmp 0x100012dc
mov eax, dword [ebp - 0x94]
sub eax, 0xe1c0e020
je 0x10002124
jmp 0x100012f2
mov eax, dword [ebp - 0x94]
sub eax, 0xf358ccbf
je 0x10001b1c
jmp 0x10001308
mov eax, dword [ebp - 0x94]
sub eax, 0xf90e979c
je 0x10001fef
jmp 0x1000131e
mov eax, dword [ebp - 0x94]
sub eax, 0xf97271e8
je 0x10001beb
jmp 0x10001334
mov eax, dword [ebp - 0x94]
sub eax, 0xfc1aca7d
je 0x10001672
jmp 0x1000134a
mov eax, dword [ebp - 0x94]
sub eax, 0xfeef9466
je 0x100019b0
jmp 0x10001360
mov eax, dword [ebp - 0x94]
sub eax, 0x1b646e46
je 0x100019e9
jmp 0x10001376
mov eax, dword [ebp - 0x94]
sub eax, 0x25da85e9
je 0x10001a75
jmp 0x1000138c
mov eax, dword [ebp - 0x94]
sub eax, 0x25fdadff
je 0x10002030
jmp 0x100013a2
mov eax, dword [ebp - 0x94]
sub eax, 0x31e7e8f2
je 0x10001f17
jmp 0x100013b8
mov eax, dword [ebp - 0x94]
sub eax, 0x3355c9e4
je 0x100017d9
jmp 0x100013ce
mov eax, dword [ebp - 0x94]
sub eax, 0x3a855233
je 0x1000165b
jmp 0x100013e4
mov eax, dword [ebp - 0x94]
sub eax, 0x3b9d0067
je 0x100018c5
jmp 0x100013fa
mov eax, dword [ebp - 0x94]
sub eax, 0x3cb0e5d0
je 0x10001c00
jmp 0x10001410
mov eax, dword [ebp - 0x94]
sub eax, 0x4352db61
je 0x100017ca
jmp 0x10001426
mov eax, dword [ebp - 0x94]
sub eax, 0x45afa77e
je 0x10001925
jmp 0x1000143c
mov eax, dword [ebp - 0x94]
sub eax, 0x4a97306f
je 0x10002178
jmp 0x10001452
mov eax, dword [ebp - 0x94]
sub eax, 0x541c79c8
je 0x10001615
jmp 0x10001468
mov eax, dword [ebp - 0x94]
sub eax, 0x558016be
je 0x10001c5e
jmp 0x1000147e
mov eax, dword [ebp - 0x94]
sub eax, 0x5bfabee1
je 0x10001ced
jmp 0x10001494
mov eax, dword [ebp - 0x94]
sub eax, 0x5e10bfa2
je 0x10001eae
jmp 0x100014aa
mov eax, dword [ebp - 0x94]
sub eax, 0x5eddaea9
je 0x1000201f
jmp 0x100014c0
mov eax, dword [ebp - 0x94]
sub eax, 0x5faf1c3b
je 0x10002158
jmp 0x100014d6
mov eax, dword [ebp - 0x94]
sub eax, 0x66391158
je 0x10001a19
jmp 0x100014ec
mov eax, dword [ebp - 0x94]
sub eax, 0x6859abf6
je 0x100016e0
jmp 0x10001502
mov eax, dword [ebp - 0x94]
sub eax, 0x6d32d5d7
je 0x10001a51
jmp 0x10001518
mov eax, dword [ebp - 0x94]
sub eax, 0x6eb31abe
je 0x10001872
jmp 0x1000152e
mov eax, dword [ebp - 0x94]
sub eax, 0x7077a3a3
je 0x10001c77
jmp 0x10001544
mov eax, dword [ebp - 0x94]
sub eax, 0x797fb2da
je 0x10001ffe
jmp 0x1000155a
mov eax, dword [ebp - 0x94]
sub eax, 0x7a8ac3bc
je 0x10001a8c
jmp 0x10001570
jmp 0x10002193
mov eax, dword [ebp - 0x90]
push eax
sub esp, 8
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
sub esp, 0x104
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
push eax
mov ecx, esp
mov dword [ebp - 0x58], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x54], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x84], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x80]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000c7e0
add esp, 0xc
mov dword [ebp - 0x8c], 0x541c79c8
jmp 0x10002193
mov eax, dword [ebp - 0x84]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x7c]
mov eax, 0x965ed030
mov ecx, 0x3a855233
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov dword [ebp - 0x8c], 0x5eddaea9
jmp 0x10002193
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x8c], 0xfc1aca7d
jmp 0x10002193
mov ecx, dword [0x10095740]
mov eax, dword [0x1009573c]
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, 0x25fdadff
mov ecx, 0x6859abf6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x4c]
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 - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x7c]
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 - 0x74]
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 - 0x70]
mov dword [eax], ecx
mov eax, dword [0x10095740]
mov ecx, dword [0x1009573c]
mov edx, eax
add edx, 0xc80bdfd5
sub edx, 1
sub edx, 0xc80bdfd5
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, 0x25fdadff
mov ecx, 0x4352db61
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov dword [ebp - 0x8c], 0x3355c9e4
jmp 0x10002193
mov edx, dword [ebp - 0x70]
mov esi, 0xffffffff
mov eax, 0xb8bb25c4
mov ecx, 0xb35ae248
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov dword [ebp - 0x8c], 0x5eddaea9
jmp 0x10002193
mov eax, dword [ebp - 0x70]
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 - 0x6c]
mov dword [eax], ecx
mov dword [ebp - 0x8c], 0xb864ce00
jmp 0x10002193
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x8c], 0x6eb31abe
jmp 0x10002193
mov edx, dword [ebp - 0x48]
mov eax, 0xad9f833c
mov ecx, 0x8512a410
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x8c], 0xa1459719
jmp 0x10002193
mov eax, dword [ebp - 0x44]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x8c], 0x3b9d0067
jmp 0x10002193
mov dword [ebp - 0x8c], 0x5eddaea9
jmp 0x10002193
mov eax, dword [0x10095740]
mov ecx, dword [0x1009573c]
mov edx, eax
add edx, 0x9ff361b
sub edx, 1
sub edx, 0x9ff361b
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, 0x9c512348
mov ecx, 0x45afa77e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov eax, dword [ebp - 0x6c]
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 - 0x68]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov eax, dword [0x10095740]
mov ecx, dword [0x1009573c]
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, 0x9c512348
mov ecx, 0xfeef9466
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov dword [ebp - 0x8c], 0xbc9ec9dd
jmp 0x10002193
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x40]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x8c], 0x1b646e46
jmp 0x10002193
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x38]
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 - 0x60]
mov dword [eax], ecx
mov eax, dword [ebp - 0x5c]
mov word [eax], 0
mov dword [ebp - 0x8c], 0x66391158
jmp 0x10002193
mov eax, dword [ebp - 0x5c]
movzx eax, word [eax]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x8c], 0xce51e956
jmp 0x10002193
mov eax, dword [ebp - 0x30]
add eax, 4
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x8c], 0x6d32d5d7
jmp 0x10002193
mov eax, dword [ebp - 0x2c]
movzx esi, word [eax + 2]
mov edx, dword [ebp - 0x34]
mov eax, 0xb347a98d
mov ecx, 0x25da85e9
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x8c], 0x7a8ac3bc
jmp 0x10002193
mov eax, dword [ebp - 0x28]
sub eax, 0x6c39cc99
add eax, 0x18
add eax, 0x6c39cc99
mov ecx, dword [ebp - 0x60]
mov ecx, dword [ecx]
movzx edx, word [ecx + 0x14]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, dword [ebp - 0x5c]
movzx ecx, word [ecx]
imul edx, ecx, 0x28
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x8c], 0x9d5e65f4
jmp 0x10002193
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x24]
mov dword [eax], ecx
mov eax, dword [ebp - 0x58]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100183b0
call fcn.1000eb50
add esp, 8
mov edx, eax
mov eax, 0xf358ccbf
mov ecx, 0x9a2a5370
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov eax, dword [ebp - 0x54]
mov dword [eax], 0
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x78]
mov edx, dword [eax]
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub edx, eax
mov eax, dword [ebp - 0x54]
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 - 0x50]
mov byte [eax], cl
mov eax, dword [ebp - 0x78]
mov edx, dword [eax]
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xe41c58
add edx, eax
sub edx, 0xe41c58
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add ecx, 0x4f7ec54d
add ecx, eax
sub ecx, 0x4f7ec54d
mov eax, dword [ebp - 0x58]
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.1000c940
add esp, 0xc
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x8c], 0xf97271e8
jmp 0x10002193
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x8c], 0x3cb0e5d0
jmp 0x10002193
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
mov esi, dword [ebp - 0x14]
xor eax, eax
sub eax, ecx
sub esi, eax
mov eax, dword [ebp - 0x54]
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 - 0x50]
mov byte [eax], cl
mov dword [ebp - 0x8c], 0x9a2a5370
jmp 0x10002193
mov dword [ebp - 0x8c], 0x558016be
jmp 0x10002193
mov eax, dword [ebp - 0x5c]
mov ax, word [eax]
mov word [ebp - 0x10], ax
mov dword [ebp - 0x8c], 0x7077a3a3
jmp 0x10002193
mov ecx, dword [0x10095740]
mov eax, dword [0x1009573c]
mov edx, ecx
sub edx, 0xa3100ce2
sub edx, 1
add edx, 0xa3100ce2
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, 0xe1c0e020
mov ecx, 0x5bfabee1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov ax, word [ebp - 0x10]
xor ecx, ecx
sub cx, ax
xor eax, eax
sub ax, 1
add cx, ax
xor eax, eax
sub ax, cx
mov word [ebp - 0xe], ax
mov eax, dword [0x10095740]
mov ecx, dword [0x1009573c]
mov edx, eax
add edx, 0x50047209
sub edx, 1
sub edx, 0x50047209
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, 0xe1c0e020
mov ecx, 0xc64bb6ff
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov dword [ebp - 0x8c], 0xda48e8fd
jmp 0x10002193
mov ecx, dword [0x10095740]
mov eax, dword [0x1009573c]
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, 0x89ad2728
mov ecx, 0xc406163b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov eax, dword [ebp - 0x5c]
mov cx, word [ebp - 0xe]
mov word [eax], cx
mov ecx, dword [0x10095740]
mov eax, dword [0x1009573c]
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, 0x89ad2728
mov ecx, 0xba70fa73
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov dword [ebp - 0x8c], 0x66391158
jmp 0x10002193
mov eax, dword [0x10095740]
mov ecx, dword [0x1009573c]
mov edx, eax
add edx, 0x4b99eb03
sub edx, 1
sub edx, 0x4b99eb03
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, 0x5faf1c3b
mov ecx, 0x5e10bfa2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x10095740]
mov ecx, dword [0x1009573c]
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, 0x5faf1c3b
mov ecx, 0x9739cc51
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov dword [ebp - 0x8c], 0x31e7e8f2
jmp 0x10002193
mov eax, dword [0x10095740]
mov ecx, dword [0x1009573c]
mov edx, eax
add edx, 0x21e01ffb
sub edx, 1
sub edx, 0x21e01ffb
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, 0x4a97306f
mov ecx, 0xa0fafa5c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x10095740]
mov eax, dword [0x1009573c]
mov edx, ecx
add edx, 0xe94d619f
sub edx, 1
sub edx, 0xe94d619f
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, 0x4a97306f
mov ecx, 0xf90e979c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x8c], eax
jmp 0x10002193
mov dword [ebp - 0x8c], 0x797fb2da
jmp 0x10002193
mov eax, dword [ebp - 0x88]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x8c], 0x5eddaea9
jmp 0x10002193
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000bbe0
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x4c]
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 - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x7c]
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 - 0x74]
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 - 0x70]
mov dword [eax], ecx
mov dword [ebp - 0x8c], 0x6859abf6
jmp 0x10002193
mov eax, dword [ebp - 0x6c]
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 - 0x68]
mov dword [eax], ecx
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x8c], 0x45afa77e
jmp 0x10002193
mov ax, word [ebp - 0x10]
mov ax, word [ebp - 0x10]
mov ax, word [ebp - 0x10]
mov dword [ebp - 0x8c], 0x5bfabee1
jmp 0x10002193
mov eax, dword [ebp - 0x5c]
mov cx, word [ebp - 0xe]
mov word [eax], cx
mov dword [ebp - 0x8c], 0xc406163b
jmp 0x10002193
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x8c], 0x5e10bfa2
jmp 0x10002193
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x8c], 0xa0fafa5c
jmp 0x10001108