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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x194
mov eax, dword [ebp + 8]
mov dword [ebp - 0x198], eax
mov eax, dword [0x1009a600]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x194], 0xd0572f33
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x19c], eax
sub eax, 0x8287b39a
je 0x10002428
jmp 0x10001454
mov eax, dword [ebp - 0x19c]
sub eax, 0x88c79bbe
je 0x10001af4
jmp 0x1000146a
mov eax, dword [ebp - 0x19c]
sub eax, 0x8fdbc78d
je 0x10002488
jmp 0x10001480
mov eax, dword [ebp - 0x19c]
sub eax, 0x90189686
je 0x10001c4c
jmp 0x10001496
mov eax, dword [ebp - 0x19c]
sub eax, 0x9290c553
je 0x100024f1
jmp 0x100014ac
mov eax, dword [ebp - 0x19c]
sub eax, 0x94b8b2dd
je 0x10001c5b
jmp 0x100014c2
mov eax, dword [ebp - 0x19c]
sub eax, 0x9dc9473d
je 0x10001f73
jmp 0x100014d8
mov eax, dword [ebp - 0x19c]
sub eax, 0x9e2824a8
je 0x10001e54
jmp 0x100014ee
mov eax, dword [ebp - 0x19c]
sub eax, 0x9eb8fc0d
je 0x10001cb0
jmp 0x10001504
mov eax, dword [ebp - 0x19c]
sub eax, 0xb48be875
je 0x10001ea1
jmp 0x1000151a
mov eax, dword [ebp - 0x19c]
sub eax, 0xb4c82c9d
je 0x10001e82
jmp 0x10001530
mov eax, dword [ebp - 0x19c]
sub eax, 0xb9f26bf6
je 0x10001aa3
jmp 0x10001546
mov eax, dword [ebp - 0x19c]
sub eax, 0xc0c92346
je 0x10001a5d
jmp 0x1000155c
mov eax, dword [ebp - 0x19c]
sub eax, 0xc643e094
je 0x100026a5
jmp 0x10001572
mov eax, dword [ebp - 0x19c]
sub eax, 0xc6773ade
je 0x10002224
jmp 0x10001588
mov eax, dword [ebp - 0x19c]
sub eax, 0xc751b3e6
je 0x10001ff7
jmp 0x1000159e
mov eax, dword [ebp - 0x19c]
sub eax, 0xc825a6d0
je 0x100023d4
jmp 0x100015b4
mov eax, dword [ebp - 0x19c]
sub eax, 0xc93b6300
je 0x10001f22
jmp 0x100015ca
mov eax, dword [ebp - 0x19c]
sub eax, 0xd0572f33
je 0x100018e7
jmp 0x100015e0
mov eax, dword [ebp - 0x19c]
sub eax, 0xd061327c
je 0x10001be5
jmp 0x100015f6
mov eax, dword [ebp - 0x19c]
sub eax, 0xd3add569
je 0x10001e63
jmp 0x1000160c
mov eax, dword [ebp - 0x19c]
sub eax, 0xd8672c8c
je 0x10002500
jmp 0x10001622
mov eax, dword [ebp - 0x19c]
sub eax, 0xdb79c58c
je 0x10001b79
jmp 0x10001638
mov eax, dword [ebp - 0x19c]
sub eax, 0xe75c67f7
je 0x10001923
jmp 0x1000164e
mov eax, dword [ebp - 0x19c]
sub eax, 0xe90dc044
je 0x100024d1
jmp 0x10001664
mov eax, dword [ebp - 0x19c]
sub eax, 0xef189734
je 0x100020b5
jmp 0x1000167a
mov eax, dword [ebp - 0x19c]
sub eax, 0xf0f6bd0d
je 0x10001d7b
jmp 0x10001690
mov eax, dword [ebp - 0x19c]
sub eax, 0x2db18de
je 0x10001a82
jmp 0x100016a6
mov eax, dword [ebp - 0x19c]
sub eax, 0x60bbd74
je 0x100024e2
jmp 0x100016bc
mov eax, dword [ebp - 0x19c]
sub eax, 0xd759115
je 0x10001ecd
jmp 0x100016d2
mov eax, dword [ebp - 0x19c]
sub eax, 0xd9b2259
je 0x100019a7
jmp 0x100016e8
mov eax, dword [ebp - 0x19c]
sub eax, 0x11a5cfdd
je 0x10002696
jmp 0x100016fe
mov eax, dword [ebp - 0x19c]
sub eax, 0x1ad51189
je 0x10001b6a
jmp 0x10001714
mov eax, dword [ebp - 0x19c]
sub eax, 0x1bb32bda
je 0x10002006
jmp 0x1000172a
mov eax, dword [ebp - 0x19c]
sub eax, 0x1bceb71b
je 0x10001c2b
jmp 0x10001740
mov eax, dword [ebp - 0x19c]
sub eax, 0x2197d7d5
je 0x100025ad
jmp 0x10001756
mov eax, dword [ebp - 0x19c]
sub eax, 0x2442b15f
je 0x10001b94
jmp 0x1000176c
mov eax, dword [ebp - 0x19c]
sub eax, 0x2ef4ae6f
je 0x10002437
jmp 0x10001782
mov eax, dword [ebp - 0x19c]
sub eax, 0x31abd8e3
je 0x10002323
jmp 0x10001798
mov eax, dword [ebp - 0x19c]
sub eax, 0x3acbf767
je 0x10001d8a
jmp 0x100017ae
mov eax, dword [ebp - 0x19c]
sub eax, 0x4f25374c
je 0x10001dd3
jmp 0x100017c4
mov eax, dword [ebp - 0x19c]
sub eax, 0x5600bea3
je 0x100022b5
jmp 0x100017da
mov eax, dword [ebp - 0x19c]
sub eax, 0x5e92d89a
je 0x100023a6
jmp 0x100017f0
mov eax, dword [ebp - 0x19c]
sub eax, 0x675d5843
je 0x10002251
jmp 0x10001806
mov eax, dword [ebp - 0x19c]
sub eax, 0x692d0df3
je 0x10001cf9
jmp 0x1000181c
mov eax, dword [ebp - 0x19c]
sub eax, 0x7084c748
je 0x1000203f
jmp 0x10001832
mov eax, dword [ebp - 0x19c]
sub eax, 0x7296adac
je 0x100023c5
jmp 0x10001848
mov eax, dword [ebp - 0x19c]
sub eax, 0x72e50c4c
je 0x1000236c
jmp 0x1000185e
mov eax, dword [ebp - 0x19c]
sub eax, 0x752eba01
je 0x10002233
jmp 0x10001874
mov eax, dword [ebp - 0x19c]
sub eax, 0x757795b2
je 0x1000237b
jmp 0x1000188a
mov eax, dword [ebp - 0x19c]
sub eax, 0x75d1af60
je 0x10002407
jmp 0x100018a0
mov eax, dword [ebp - 0x19c]
sub eax, 0x7668ada5
je 0x10002543
jmp 0x100018b6
mov eax, dword [ebp - 0x19c]
sub eax, 0x76b9092e
je 0x10001998
jmp 0x100018cc
mov eax, dword [ebp - 0x19c]
sub eax, 0x7a194229
je 0x10001c10
jmp 0x100018e2
jmp 0x100026af
push eax
mov eax, esp
mov dword [ebp - 0x170], eax
push eax
mov eax, esp
mov dword [ebp - 0x16c], eax
push eax
mov eax, esp
mov dword [ebp - 0x168], eax
push eax
mov eax, esp
mov dword [ebp - 0x164], eax
push eax
mov eax, esp
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x194], 0xe75c67f7
jmp 0x100026af
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x174], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1000c950
add esp, 0xc
mov eax, dword [ebp - 0x174]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x17c], eax
mov eax, 0x76b9092e
mov ecx, 0xd9b2259
cmp dword [ebp - 0x17c], 0
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov dword [ebp - 0x194], 0x2ef4ae6f
jmp 0x100026af
mov ecx, dword [ebp - 0x17c]
mov edx, dword [ebp - 0x178]
lea eax, [ebp - 0x11c]
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 - 0x11c]
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x17c]
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 - 0x110]
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 - 0x184], eax
mov dword [ebp - 0x194], 0xc0c92346
jmp 0x100026af
mov eax, 0xffffffff
cmp dword [ebp - 0x184], eax
sete al
and al, 1
mov byte [ebp - 0x159], al
mov dword [ebp - 0x194], 0x2db18de
jmp 0x100026af
mov dl, byte [ebp - 0x159]
mov eax, 0xdb79c58c
mov ecx, 0xb9f26bf6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov eax, dword [0x1009b938]
mov ecx, dword [0x1009b934]
mov edx, eax
sub edx, 0xcf0d5a1e
sub edx, 1
add edx, 0xcf0d5a1e
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, 0x60bbd74
mov ecx, 0x88c79bbe
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov ecx, dword [0x1009b938]
mov eax, dword [0x1009b934]
mov edx, ecx
add edx, 0x4c9ae4e
sub edx, 1
sub edx, 0x4c9ae4e
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, 0x60bbd74
mov ecx, 0x1ad51189
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov dword [ebp - 0x194], 0x2ef4ae6f
jmp 0x100026af
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x194], 0x2442b15f
jmp 0x100026af
mov eax, dword [ebp - 0x158]
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 - 0x154], eax
mov dword [ebp - 0x194], 0xd061327c
jmp 0x100026af
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x188], eax
mov eax, 0x7a194229
mov ecx, 0x94b8b2dd
cmp dword [ebp - 0x188], 0
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x194], 0x1bceb71b
jmp 0x100026af
mov eax, dword [ebp - 0x150]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x194], 0x90189686
jmp 0x100026af
mov dword [ebp - 0x194], 0x2ef4ae6f
jmp 0x100026af
mov eax, dword [ebp - 0x188]
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 - 0x18c], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x194], 0x9eb8fc0d
jmp 0x100026af
mov eax, dword [0x1009b938]
mov ecx, dword [0x1009b934]
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, 0x9290c553
mov ecx, 0x692d0df3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x14c], eax
mov ecx, dword [0x1009b938]
mov eax, dword [0x1009b934]
mov edx, ecx
sub edx, 0x9623b51a
sub edx, 1
add edx, 0x9623b51a
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, 0x9290c553
mov ecx, 0xf0f6bd0d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov dword [ebp - 0x194], 0x3acbf767
jmp 0x100026af
mov eax, dword [0x1009b938]
mov ecx, dword [0x1009b934]
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, 0xd8672c8c
mov ecx, 0x4f25374c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov eax, dword [ebp - 0x190]
mov edx, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x14c]
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 - 0x170]
mov dword [eax], ecx
mov eax, dword [ebp - 0x16c]
mov word [eax], 0
mov eax, dword [0x1009b938]
mov ecx, dword [0x1009b934]
mov edx, eax
add edx, 0xe0673282
sub edx, 1
sub edx, 0xe0673282
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, 0xd8672c8c
mov ecx, 0x9e2824a8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov dword [ebp - 0x194], 0xd3add569
jmp 0x100026af
mov eax, dword [ebp - 0x16c]
mov ax, word [eax]
mov word [ebp - 0x146], ax
mov dword [ebp - 0x194], 0xb4c82c9d
jmp 0x100026af
mov ax, word [ebp - 0x146]
movzx eax, ax
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x194], 0xb48be875
jmp 0x100026af
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
movzx esi, word [eax + 6]
mov edx, dword [ebp - 0x144]
mov eax, 0xc825a6d0
mov ecx, 0xd759115
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x18
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, dword [ebp - 0x170]
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 dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x16c]
movzx eax, word [eax]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x194], 0xc93b6300
jmp 0x100026af
mov eax, dword [0x1009b938]
mov ecx, dword [0x1009b934]
mov edx, eax
add edx, 0xf1a38a23
sub edx, 1
sub edx, 0xf1a38a23
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, 0x7668ada5
mov ecx, 0x9dc9473d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov eax, dword [ebp - 0x13c]
imul edx, eax, 0x28
mov ecx, dword [ebp - 0x140]
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 - 0x168]
mov dword [eax], ecx
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov dword [ebp - 0x138], eax
mov eax, dword [0x1009b938]
mov ecx, dword [0x1009b934]
mov edx, eax
sub edx, 0x1a3a4d87
sub edx, 1
add edx, 0x1a3a4d87
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, 0x7668ada5
mov ecx, 0xc751b3e6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov dword [ebp - 0x194], 0x1bb32bda
jmp 0x100026af
mov ecx, dword [ebp - 0x138]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100183b0
call fcn.1000ecc0
add esp, 8
mov edx, eax
mov eax, 0x7084c748
mov ecx, 0x5600bea3
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov ecx, dword [0x1009b938]
mov eax, dword [0x1009b934]
mov edx, ecx
add edx, 0x55843258
sub edx, 1
sub edx, 0x55843258
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, 0x2197d7d5
mov ecx, 0xef189734
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov eax, dword [ebp - 0x164]
mov dword [eax], 0
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x168]
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 - 0x164]
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 - 0x160]
mov byte [eax], cl
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
sub edx, eax
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub ecx, 0xb9e416c5
add ecx, eax
add ecx, 0xb9e416c5
mov eax, dword [ebp - 0x168]
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.1000cab0
add esp, 0xc
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov dword [ebp - 0x128], eax
mov ecx, dword [0x1009b938]
mov eax, dword [0x1009b934]
mov edx, ecx
add edx, 0x5ab7e251
sub edx, 1
sub edx, 0x5ab7e251
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, 0x2197d7d5
mov ecx, 0xc6773ade
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov dword [ebp - 0x194], 0x752eba01
jmp 0x100026af
mov eax, dword [ebp - 0x128]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x194], 0x675d5843
jmp 0x100026af
mov esi, dword [ebp - 0x12c]
mov eax, dword [ebp - 0x124]
add esi, 0x2bf44113
add esi, eax
sub esi, 0x2bf44113
mov eax, dword [ebp - 0x164]
mov ecx, dword [ebp - 0x134]
mov edx, dword [ebp - 0x130]
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 - 0x160]
mov byte [eax], cl
mov dword [ebp - 0x194], 0x5600bea3
jmp 0x100026af
mov ecx, dword [0x1009b938]
mov eax, dword [0x1009b934]
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, 0x11a5cfdd
mov ecx, 0x31abd8e3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov eax, dword [0x1009b938]
mov ecx, dword [0x1009b934]
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, 0x11a5cfdd
mov ecx, 0x72e50c4c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov dword [ebp - 0x194], 0x757795b2
jmp 0x100026af
mov eax, dword [ebp - 0x16c]
mov ax, word [eax]
add ax, 0x117a
add ax, 1
sub ax, 0x117a
mov word [ebp - 0x11e], ax
mov dword [ebp - 0x194], 0x5e92d89a
jmp 0x100026af
mov eax, dword [ebp - 0x16c]
mov cx, word [ebp - 0x11e]
mov word [eax], cx
mov dword [ebp - 0x194], 0x7296adac
jmp 0x100026af
mov dword [ebp - 0x194], 0xd3add569
jmp 0x100026af
mov eax, dword [ebp - 0x184]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x188]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x194], 0x75d1af60
jmp 0x100026af
mov eax, dword [ebp - 0x178]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x194], 0x8287b39a
jmp 0x100026af
mov dword [ebp - 0x194], 0x2ef4ae6f
jmp 0x100026af
mov eax, dword [0x1009b938]
mov ecx, dword [0x1009b934]
mov edx, eax
add edx, 0xfb999b68
sub edx, 1
sub edx, 0xfb999b68
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, 0xc643e094
mov ecx, 0x8fdbc78d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov eax, dword [0x1009b938]
mov ecx, dword [0x1009b934]
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, 0xc643e094
mov ecx, 0xe90dc044
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x100026af
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000bd50
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x194], 0x88c79bbe
jmp 0x100026af
mov dword [ebp - 0x194], 0x692d0df3
jmp 0x100026af
mov eax, dword [ebp - 0x190]
mov edx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x14c]
mov eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x14c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x170]
mov dword [eax], ecx
mov eax, dword [ebp - 0x16c]
mov word [eax], 0
mov dword [ebp - 0x194], 0x4f25374c
jmp 0x100026af
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x13c]
imul edx, eax, 0x28
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x140]
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 - 0x168]
mov dword [eax], ecx
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x194], 0x9dc9473d
jmp 0x100026af
mov eax, dword [ebp - 0x164]
mov dword [eax], 0
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x168]
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 - 0x164]
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 - 0x160]
mov byte [eax], cl
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xdfe420f1
add edx, eax
sub edx, 0xdfe420f1
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub ecx, 0xf2f65446
add ecx, eax
add ecx, 0xf2f65446
mov eax, dword [ebp - 0x168]
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.1000cab0
add esp, 0xc
mov eax, dword [ebp - 0x164]
mov eax, dword [ebp - 0x168]
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x194], 0xef189734
jmp 0x100026af
mov dword [ebp - 0x194], 0x31abd8e3
jmp 0x100026af
mov dword [ebp - 0x194], 0x8fdbc78d
jmp 0x10001438