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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1a0
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1a8], eax
mov eax, dword [0x10086080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1a4], 0x908d7d0e
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1ac], eax
sub eax, 0x844c3f96
je 0x1000a879
jmp 0x10009c15
mov eax, dword [ebp - 0x1ac]
sub eax, 0x8a4be3e3
je 0x1000af12
jmp 0x10009c2b
mov eax, dword [ebp - 0x1ac]
sub eax, 0x8c11a0a5
je 0x1000aa45
jmp 0x10009c41
mov eax, dword [ebp - 0x1ac]
sub eax, 0x8c3b6780
je 0x1000b0fe
jmp 0x10009c57
mov eax, dword [ebp - 0x1ac]
sub eax, 0x8f87fc8e
je 0x1000b172
jmp 0x10009c6d
mov eax, dword [ebp - 0x1ac]
sub eax, 0x908d7d0e
je 0x1000a16e
jmp 0x10009c83
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9669aec4
je 0x1000a8e6
jmp 0x10009c99
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9777609b
je 0x1000a46f
jmp 0x10009caf
mov eax, dword [ebp - 0x1ac]
sub eax, 0x9961a5bc
je 0x1000a73d
jmp 0x10009cc5
mov eax, dword [ebp - 0x1ac]
sub eax, 0xa8482bab
je 0x1000b237
jmp 0x10009cdb
mov eax, dword [ebp - 0x1ac]
sub eax, 0xaa644114
je 0x1000a792
jmp 0x10009cf1
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb0543b7e
je 0x1000b2ae
jmp 0x10009d07
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb3351558
je 0x1000af88
jmp 0x10009d1d
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb3577379
je 0x1000acc4
jmp 0x10009d33
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb473ef39
je 0x1000ac1b
jmp 0x10009d49
mov eax, dword [ebp - 0x1ac]
sub eax, 0xb71c0c4f
je 0x1000b25b
jmp 0x10009d5f
mov eax, dword [ebp - 0x1ac]
sub eax, 0xc2af06fc
je 0x1000a6bc
jmp 0x10009d75
mov eax, dword [ebp - 0x1ac]
sub eax, 0xc4c19fb9
je 0x1000a777
jmp 0x10009d8b
mov eax, dword [ebp - 0x1ac]
sub eax, 0xc754d7d5
je 0x1000ab91
jmp 0x10009da1
mov eax, dword [ebp - 0x1ac]
sub eax, 0xc781d45a
je 0x1000ab82
jmp 0x10009db7
mov eax, dword [ebp - 0x1ac]
sub eax, 0xcdf4e2e3
je 0x1000a6ec
jmp 0x10009dcd
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd0043766
je 0x1000a6dd
jmp 0x10009de3
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd5248506
je 0x1000b0dd
jmp 0x10009df9
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd693e8b0
je 0x1000abe2
jmp 0x10009e0f
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd8ecc545
je 0x1000aee8
jmp 0x10009e25
mov eax, dword [ebp - 0x1ac]
sub eax, 0xda57bae2
je 0x1000b246
jmp 0x10009e3b
mov eax, dword [ebp - 0x1ac]
sub eax, 0xe033b451
je 0x1000adb0
jmp 0x10009e51
mov eax, dword [ebp - 0x1ac]
sub eax, 0xe05b2a87
je 0x1000a265
jmp 0x10009e67
mov eax, dword [ebp - 0x1ac]
sub eax, 0xe3cf9f47
je 0x1000a3f9
jmp 0x10009e7d
mov eax, dword [ebp - 0x1ac]
sub eax, 0xee38a035
je 0x1000ad07
jmp 0x10009e93
mov eax, dword [ebp - 0x1ac]
sub eax, 0xef4389b8
je 0x1000b181
jmp 0x10009ea9
mov eax, dword [ebp - 0x1ac]
sub eax, 0xf464a013
je 0x1000b010
jmp 0x10009ebf
mov eax, dword [ebp - 0x1ac]
sub eax, 0xf6b981db
je 0x1000a274
jmp 0x10009ed5
mov eax, dword [ebp - 0x1ac]
sub eax, 0xfe1889ec
je 0x1000a1dc
jmp 0x10009eeb
mov eax, dword [ebp - 0x1ac]
sub eax, 0x866db06
je 0x1000a9a0
jmp 0x10009f01
mov eax, dword [ebp - 0x1ac]
sub eax, 0xd9990bd
je 0x1000b01f
jmp 0x10009f17
mov eax, dword [ebp - 0x1ac]
sub eax, 0x12b621ca
je 0x1000a504
jmp 0x10009f2d
mov eax, dword [ebp - 0x1ac]
sub eax, 0x1562a55a
je 0x1000b10d
jmp 0x10009f43
mov eax, dword [ebp - 0x1ac]
sub eax, 0x16d31ef6
je 0x1000ada1
jmp 0x10009f59
mov eax, dword [ebp - 0x1ac]
sub eax, 0x18eadbfd
je 0x1000b0ec
jmp 0x10009f6f
mov eax, dword [ebp - 0x1ac]
sub eax, 0x1bd2b576
je 0x1000a6ad
jmp 0x10009f85
mov eax, dword [ebp - 0x1ac]
sub eax, 0x254048bf
je 0x1000a4f5
jmp 0x10009f9b
mov eax, dword [ebp - 0x1ac]
sub eax, 0x270d425d
je 0x1000ab08
jmp 0x10009fb1
mov eax, dword [ebp - 0x1ac]
sub eax, 0x27170f81
je 0x1000a7b3
jmp 0x10009fc7
mov eax, dword [ebp - 0x1ac]
sub eax, 0x35c72f9e
je 0x1000ae45
jmp 0x10009fdd
mov eax, dword [ebp - 0x1ac]
sub eax, 0x3a5075ef
je 0x1000adcf
jmp 0x10009ff3
mov eax, dword [ebp - 0x1ac]
sub eax, 0x3f3f11eb
je 0x1000a932
jmp 0x1000a009
mov eax, dword [ebp - 0x1ac]
sub eax, 0x3f732ad5
je 0x1000a86a
jmp 0x1000a01f
mov eax, dword [ebp - 0x1ac]
sub eax, 0x44bd1ee5
je 0x1000aed9
jmp 0x1000a035
mov eax, dword [ebp - 0x1ac]
sub eax, 0x4defe0a3
je 0x1000b070
jmp 0x1000a04b
mov eax, dword [ebp - 0x1ac]
sub eax, 0x54b138d0
je 0x1000a2ea
jmp 0x1000a061
mov eax, dword [ebp - 0x1ac]
sub eax, 0x57ae24ae
je 0x1000a918
jmp 0x1000a077
mov eax, dword [ebp - 0x1ac]
sub eax, 0x615bafda
je 0x1000b26a
jmp 0x1000a08d
mov eax, dword [ebp - 0x1ac]
sub eax, 0x61f93698
je 0x1000b2cf
jmp 0x1000a0a3
mov eax, dword [ebp - 0x1ac]
sub eax, 0x63af586e
je 0x1000aa36
jmp 0x1000a0b9
mov eax, dword [ebp - 0x1ac]
sub eax, 0x680d19f5
je 0x1000a3ea
jmp 0x1000a0cf
mov eax, dword [ebp - 0x1ac]
sub eax, 0x6ace126f
je 0x1000aa71
jmp 0x1000a0e5
mov eax, dword [ebp - 0x1ac]
sub eax, 0x6b06dbab
je 0x1000a7fc
jmp 0x1000a0fb
mov eax, dword [ebp - 0x1ac]
sub eax, 0x7001468c
je 0x1000a3c9
jmp 0x1000a111
mov eax, dword [ebp - 0x1ac]
sub eax, 0x71515cb2
je 0x1000aef7
jmp 0x1000a127
mov eax, dword [ebp - 0x1ac]
sub eax, 0x71c41e5c
je 0x1000a57a
jmp 0x1000a13d
mov eax, dword [ebp - 0x1ac]
sub eax, 0x74b147fb
je 0x1000aa92
jmp 0x1000a153
mov eax, dword [ebp - 0x1ac]
sub eax, 0x7837b478
je 0x1000a758
jmp 0x1000a169
jmp 0x1000b2fd
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
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, 0x8c3b6780
mov ecx, 0xfe1889ec
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
push eax
mov eax, esp
mov dword [ebp - 0x17c], eax
push eax
mov eax, esp
mov dword [ebp - 0x178], eax
push eax
mov eax, esp
mov dword [ebp - 0x174], eax
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
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, 0x8c3b6780
mov ecx, 0xe05b2a87
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0xf6b981db
jmp 0x1000b2fd
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
mov edx, ecx
sub edx, 0xce293da5
sub edx, 1
add edx, 0xce293da5
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, 0x1562a55a
mov ecx, 0x54b138d0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov eax, dword [ebp - 0x1a8]
push eax
mov ecx, esp
mov dword [ebp - 0x170], ecx
mov dword [ebp - 0x180], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x184], eax
lea eax, [ebp - 0x120]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10026a70
add esp, 0xc
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x188], eax
cmp dword [ebp - 0x188], 0
setne al
and al, 1
mov byte [ebp - 0x169], al
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
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, 0x1562a55a
mov ecx, 0x7001468c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dl, byte [ebp - 0x169]
mov eax, 0x680d19f5
mov ecx, 0xe3cf9f47
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0x18eadbfd
jmp 0x1000b2fd
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
mov edx, ecx
sub edx, 0xb7ed3c19
sub edx, 1
add edx, 0xb7ed3c19
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, 0x8f87fc8e
mov ecx, 0x9777609b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x164], eax
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
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, 0x8f87fc8e
mov ecx, 0x254048bf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0x12b621ca
jmp 0x1000b2fd
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
mov edx, ecx
add edx, 0x6c9bdead
sub edx, 1
sub edx, 0x6c9bdead
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, 0xef4389b8
mov ecx, 0x71c41e5c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov ecx, dword [ebp - 0x168]
mov edx, dword [ebp - 0x164]
lea eax, [ebp - 0x120]
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 - 0x120]
mov dword [ebp - 0x18c], eax
lea eax, [ebp - 0x114]
mov ecx, dword [ebp - 0x188]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x114]
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 dword [ebp - 0x190], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x190], eax
sete al
and al, 1
mov byte [ebp - 0x15d], al
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
mov edx, ecx
add edx, 0x5d20ffd6
sub edx, 1
sub edx, 0x5d20ffd6
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, 0xef4389b8
mov ecx, 0x1bd2b576
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0xc2af06fc
jmp 0x1000b2fd
mov dl, byte [ebp - 0x15d]
mov eax, 0xcdf4e2e3
mov ecx, 0xd0043766
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0x18eadbfd
jmp 0x1000b2fd
mov eax, dword [ebp - 0x190]
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 - 0x15c], eax
mov dword [ebp - 0x1a4], 0x9961a5bc
jmp 0x1000b2fd
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x1a4], 0x7837b478
jmp 0x1000b2fd
mov eax, 0xc4c19fb9
mov ecx, 0x844c3f96
cmp dword [ebp - 0x194], 0
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1a4], 0xaa644114
jmp 0x1000b2fd
mov eax, dword [ebp - 0x158]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a4], 0x27170f81
jmp 0x1000b2fd
mov eax, dword [0x10087564]
mov ecx, dword [0x10087560]
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, 0xa8482bab
mov ecx, 0x6b06dbab
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
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, 0xa8482bab
mov ecx, 0x3f732ad5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0x18eadbfd
jmp 0x1000b2fd
mov eax, dword [ebp - 0x194]
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 dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x1a4], 0x9669aec4
jmp 0x1000b2fd
mov eax, dword [ebp - 0x150]
mov edx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x154]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x1a4], 0x57ae24ae
jmp 0x1000b2fd
mov eax, dword [ebp - 0x17c]
mov word [eax], 0
mov dword [ebp - 0x1a4], 0x3f3f11eb
jmp 0x1000b2fd
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
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, 0xda57bae2
mov ecx, 0x866db06
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov eax, dword [ebp - 0x17c]
movzx eax, word [eax]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x1a0]
mov ax, word [eax + 6]
mov word [ebp - 0x148], ax
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
mov edx, ecx
add edx, 0xfede05ed
sub edx, 1
sub edx, 0xfede05ed
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, 0xda57bae2
mov ecx, 0x63af586e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0x8c11a0a5
jmp 0x1000b2fd
mov ax, word [ebp - 0x148]
movzx ecx, ax
mov eax, dword [ebp - 0x14c]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x145], al
mov dword [ebp - 0x1a4], 0x6ace126f
jmp 0x1000b2fd
mov dl, byte [ebp - 0x145]
mov eax, 0x71515cb2
mov ecx, 0x74b147fb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
mov edx, ecx
sub edx, 0x724dc36f
sub edx, 1
add edx, 0x724dc36f
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, 0xb71c0c4f
mov ecx, 0x270d425d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov eax, dword [ebp - 0x1a0]
sub eax, 0x2bb139c
add eax, 0x18
add eax, 0x2bb139c
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x1a0]
movzx eax, word [eax + 0x14]
mov dword [ebp - 0x140], eax
mov eax, dword [0x10087564]
mov ecx, dword [0x10087560]
mov edx, eax
add edx, 0x106664f9
sub edx, 1
sub edx, 0x106664f9
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, 0xb71c0c4f
mov ecx, 0xc781d45a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0xc754d7d5
jmp 0x1000b2fd
mov ecx, dword [ebp - 0x144]
mov edx, dword [ebp - 0x140]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x17c]
movzx eax, word [eax]
imul eax, eax, 0x28
add ecx, 0xad710332
add ecx, eax
sub ecx, 0xad710332
mov eax, dword [ebp - 0x178]
mov dword [eax], ecx
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x1a4], 0xd693e8b0
jmp 0x1000b2fd
mov ecx, dword [ebp - 0x13c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10034a38
call fcn.1002a3d0
add esp, 8
mov edx, eax
mov eax, 0xb473ef39
mov ecx, 0x16d31ef6
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov eax, dword [ebp - 0x174]
mov dword [eax], 0
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0x5c800fa5
add edx, eax
sub edx, 0x5c800fa5
mov eax, dword [ebp - 0x174]
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 - 0x170]
mov byte [eax], cl
mov eax, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x178]
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 - 0x138], eax
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x1a4], 0xb3577379
jmp 0x1000b2fd
mov eax, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x178]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
add eax, 0x9fdc952e
add eax, ecx
sub eax, 0x9fdc952e
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
add eax, 8
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x1a4], 0xee38a035
jmp 0x1000b2fd
mov eax, dword [ebp - 0x12c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x138]
mov ecx, dword [ebp - 0x130]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10026bd0
add esp, 0xc
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
xor esi, esi
sub esi, edi
add eax, esi
xor esi, esi
sub esi, eax
mov eax, dword [ebp - 0x174]
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 - 0x170]
mov byte [eax], cl
mov dword [ebp - 0x1a4], 0x16d31ef6
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0xe033b451
jmp 0x1000b2fd
mov eax, dword [ebp - 0x17c]
mov ax, word [eax]
mov word [ebp - 0x126], ax
mov dword [ebp - 0x1a4], 0x3a5075ef
jmp 0x1000b2fd
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
mov edx, ecx
sub edx, 0xecff6a79
sub edx, 1
add edx, 0xecff6a79
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, 0x615bafda
mov ecx, 0x35c72f9e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov cx, word [ebp - 0x126]
add cx, 0x7b10
add cx, 1
sub cx, 0x7b10
mov eax, dword [ebp - 0x17c]
mov word [eax], cx
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
mov edx, ecx
add edx, 0x6189addc
sub edx, 1
sub edx, 0x6189addc
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, 0x615bafda
mov ecx, 0x44bd1ee5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0xd8ecc545
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0x3f3f11eb
jmp 0x1000b2fd
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x1a4], 0x8a4be3e3
jmp 0x1000b2fd
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
mov edx, ecx
sub edx, 0x9aec2307
sub edx, 1
add edx, 0x9aec2307
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, 0xb0543b7e
mov ecx, 0xb3351558
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x10087564]
mov eax, dword [0x10087560]
mov edx, ecx
add edx, 0xb4063f54
sub edx, 1
sub edx, 0xb4063f54
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, 0xb0543b7e
mov ecx, 0xf464a013
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0xd9990bd
jmp 0x1000b2fd
mov eax, dword [0x10087564]
mov ecx, dword [0x10087560]
mov edx, eax
add edx, 0x2a691632
sub edx, 1
sub edx, 0x2a691632
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, 0x61f93698
mov ecx, 0x4defe0a3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov eax, dword [ebp - 0x194]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x184]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x10087564]
mov ecx, dword [0x10087560]
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, 0x61f93698
mov ecx, 0xd5248506
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a4], eax
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0x18eadbfd
jmp 0x1000b2fd
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10025cd0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x1a4], 0xfe1889ec
jmp 0x1000b2fd
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x180], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x184], eax
lea eax, [ebp - 0x120]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10026a70
add esp, 0xc
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x1a4], 0x54b138d0
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0x9777609b
jmp 0x1000b2fd
mov ecx, dword [ebp - 0x168]
mov edx, dword [ebp - 0x164]
lea eax, [ebp - 0x120]
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 - 0x120]
mov dword [ebp - 0x18c], eax
lea eax, [ebp - 0x114]
mov ecx, dword [ebp - 0x188]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x114]
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 dword [ebp - 0x190], eax
mov dword [ebp - 0x1a4], 0x71c41e5c
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0x6b06dbab
jmp 0x1000b2fd
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x1a4], 0x866db06
jmp 0x1000b2fd
mov dword [ebp - 0x1a4], 0x270d425d
jmp 0x1000b2fd
mov ax, word [ebp - 0x126]
mov ax, word [ebp - 0x126]
mov ax, word [ebp - 0x126]
mov ax, word [ebp - 0x126]
mov cx, word [ebp - 0x126]
xor eax, eax
sub ax, 1
sub cx, ax
mov eax, dword [ebp - 0x17c]
mov word [eax], cx
mov dword [ebp - 0x1a4], 0x35c72f9e
jmp 0x1000b2fd
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a4], 0xb3351558
jmp 0x1000b2fd
mov eax, dword [ebp - 0x194]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x184]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a4], 0x4defe0a3
jmp 0x10009bf9