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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x190
mov eax, dword [ebp + 8]
mov dword [ebp - 0x194], eax
mov eax, dword [0x10069e00]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x190], 0xffd75fca
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x198], eax
sub eax, 0x8c4cdc4d
je 0x10001a49
jmp 0x100010e4
mov eax, dword [ebp - 0x198]
sub eax, 0x90f78c39
je 0x10001eef
jmp 0x100010fa
mov eax, dword [ebp - 0x198]
sub eax, 0x946354a5
je 0x1000236c
jmp 0x10001110
mov eax, dword [ebp - 0x198]
sub eax, 0x9e4273d4
je 0x1000196f
jmp 0x10001126
mov eax, dword [ebp - 0x198]
sub eax, 0x9fb2f03b
je 0x1000221a
jmp 0x1000113c
mov eax, dword [ebp - 0x198]
sub eax, 0xa18a1603
je 0x10001fdd
jmp 0x10001152
mov eax, dword [ebp - 0x198]
sub eax, 0xb356d841
je 0x1000220b
jmp 0x10001168
mov eax, dword [ebp - 0x198]
sub eax, 0xb6e47cc9
je 0x10001d5c
jmp 0x1000117e
mov eax, dword [ebp - 0x198]
sub eax, 0xb75f7d10
je 0x10001c19
jmp 0x10001194
mov eax, dword [ebp - 0x198]
sub eax, 0xb8956189
je 0x1000227d
jmp 0x100011aa
mov eax, dword [ebp - 0x198]
sub eax, 0xbdf234c1
je 0x10001abb
jmp 0x100011c0
mov eax, dword [ebp - 0x198]
sub eax, 0xc0e06567
je 0x10001b9d
jmp 0x100011d6
mov eax, dword [ebp - 0x198]
sub eax, 0xc7c69470
je 0x100018d8
jmp 0x100011ec
mov eax, dword [ebp - 0x198]
sub eax, 0xd23b676b
je 0x10002243
jmp 0x10001202
mov eax, dword [ebp - 0x198]
sub eax, 0xd57bb1b2
je 0x10002117
jmp 0x10001218
mov eax, dword [ebp - 0x198]
sub eax, 0xd614ea4c
je 0x10001700
jmp 0x1000122e
mov eax, dword [ebp - 0x198]
sub eax, 0xda86868b
je 0x10001aac
jmp 0x10001244
mov eax, dword [ebp - 0x198]
sub eax, 0xdc21c39b
je 0x100022d1
jmp 0x1000125a
mov eax, dword [ebp - 0x198]
sub eax, 0xdccc5821
je 0x1000176d
jmp 0x10001270
mov eax, dword [ebp - 0x198]
sub eax, 0xdcfb90e9
je 0x10001aca
jmp 0x10001286
mov eax, dword [ebp - 0x198]
sub eax, 0xdeb55646
je 0x100022fd
jmp 0x1000129c
mov eax, dword [ebp - 0x198]
sub eax, 0xe1bad89d
je 0x100022c2
jmp 0x100012b2
mov eax, dword [ebp - 0x198]
sub eax, 0xe218faf7
je 0x10001b40
jmp 0x100012c8
mov eax, dword [ebp - 0x198]
sub eax, 0xe38f7769
je 0x10001d10
jmp 0x100012de
mov eax, dword [ebp - 0x198]
sub eax, 0xe6245784
je 0x10002351
jmp 0x100012f4
mov eax, dword [ebp - 0x198]
sub eax, 0xe87854ac
je 0x10001bac
jmp 0x1000130a
mov eax, dword [ebp - 0x198]
sub eax, 0xed2597e0
je 0x10001e6d
jmp 0x10001320
mov eax, dword [ebp - 0x198]
sub eax, 0xee6a4a5d
je 0x1000177c
jmp 0x10001336
mov eax, dword [ebp - 0x198]
sub eax, 0xf4fad58f
je 0x10002108
jmp 0x1000134c
mov eax, dword [ebp - 0x198]
sub eax, 0xf5c88839
je 0x10001ca1
jmp 0x10001362
mov eax, dword [ebp - 0x198]
sub eax, 0xf6462da4
je 0x10001c58
jmp 0x10001378
mov eax, dword [ebp - 0x198]
sub eax, 0xfd09168d
je 0x100019f1
jmp 0x1000138e
mov eax, dword [ebp - 0x198]
sub eax, 0xfd100216
je 0x100020b7
jmp 0x100013a4
mov eax, dword [ebp - 0x198]
sub eax, 0xfe916c19
je 0x100022e2
jmp 0x100013ba
mov eax, dword [ebp - 0x198]
sub eax, 0xfe9964e2
je 0x100018c9
jmp 0x100013d0
mov eax, dword [ebp - 0x198]
sub eax, 0xffd75fca
je 0x100015b9
jmp 0x100013e6
mov eax, dword [ebp - 0x198]
sub eax, 0xb08cbc
je 0x1000230c
jmp 0x100013fc
mov eax, dword [ebp - 0x198]
sub eax, 0x2225c48
je 0x10002262
jmp 0x10001412
mov eax, dword [ebp - 0x198]
sub eax, 0x273719b
je 0x10001dd3
jmp 0x10001428
mov eax, dword [ebp - 0x198]
sub eax, 0xd344e08
je 0x1000233c
jmp 0x1000143e
mov eax, dword [ebp - 0x198]
sub eax, 0x119989c0
je 0x10001679
jmp 0x10001454
mov eax, dword [ebp - 0x198]
sub eax, 0x16c0628d
je 0x10001d9e
jmp 0x1000146a
mov eax, dword [ebp - 0x198]
sub eax, 0x34a05e2d
je 0x1000237b
jmp 0x10001480
mov eax, dword [ebp - 0x198]
sub eax, 0x37570ae4
je 0x10001efe
jmp 0x10001496
mov eax, dword [ebp - 0x198]
sub eax, 0x3b04f2c4
je 0x10001d33
jmp 0x100014ac
mov eax, dword [ebp - 0x198]
sub eax, 0x3b3d6692
je 0x10001d01
jmp 0x100014c2
mov eax, dword [ebp - 0x198]
sub eax, 0x43439705
je 0x100016c1
jmp 0x100014d8
mov eax, dword [ebp - 0x198]
sub eax, 0x49bb9c05
je 0x10001843
jmp 0x100014ee
mov eax, dword [ebp - 0x198]
sub eax, 0x4be9bc1b
je 0x100015e3
jmp 0x10001504
mov eax, dword [ebp - 0x198]
sub eax, 0x4ec0d288
je 0x100017cd
jmp 0x1000151a
mov eax, dword [ebp - 0x198]
sub eax, 0x58859c64
je 0x1000166a
jmp 0x10001530
mov eax, dword [ebp - 0x198]
sub eax, 0x627f3887
je 0x1000218d
jmp 0x10001546
mov eax, dword [ebp - 0x198]
sub eax, 0x6370149d
je 0x1000232d
jmp 0x1000155c
mov eax, dword [ebp - 0x198]
sub eax, 0x679f367b
je 0x100018f9
jmp 0x10001572
mov eax, dword [ebp - 0x198]
sub eax, 0x6a4b9fcf
je 0x10001e1c
jmp 0x10001588
mov eax, dword [ebp - 0x198]
sub eax, 0x7366d382
je 0x10002049
jmp 0x1000159e
mov eax, dword [ebp - 0x198]
sub eax, 0x7e7f679f
je 0x10001a00
jmp 0x100015b4
jmp 0x1000238b
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
mov dword [ebp - 0x190], 0x4be9bc1b
jmp 0x1000238b
mov eax, dword [ebp - 0x194]
push eax
mov ecx, esp
mov dword [ebp - 0x160], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x15c], ecx
mov dword [ebp - 0x170], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x174], 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.1000c340
add esp, 0xc
mov eax, dword [ebp - 0x170]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x178], eax
mov eax, 0x58859c64
mov ecx, 0x119989c0
cmp dword [ebp - 0x178], 0
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov dword [ebp - 0x190], 0xdc21c39b
jmp 0x1000238b
mov ecx, dword [ebp - 0x178]
mov edx, dword [ebp - 0x174]
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 - 0x17c], eax
mov dword [ebp - 0x190], 0x43439705
jmp 0x1000238b
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x178]
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]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x190], 0xd614ea4c
jmp 0x1000238b
mov eax, dword [ebp - 0x158]
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 - 0x180], eax
mov edx, 0xffffffff
mov eax, 0xee6a4a5d
mov ecx, 0xdccc5821
cmp dword [ebp - 0x180], edx
cmove eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov dword [ebp - 0x190], 0xdc21c39b
jmp 0x1000238b
mov eax, dword [ebp - 0x180]
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 - 0x190], 0x4ec0d288
jmp 0x1000238b
mov ecx, dword [0x1006b138]
mov eax, dword [0x1006b134]
mov edx, ecx
add edx, 0xc5c894f
sub edx, 1
sub edx, 0xc5c894f
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, 0xfe916c19
mov ecx, 0x49bb9c05
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x150], eax
mov ecx, dword [0x1006b138]
mov eax, dword [0x1006b134]
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, 0xfe916c19
mov ecx, 0xfe9964e2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov dword [ebp - 0x190], 0xc7c69470
jmp 0x1000238b
mov edx, dword [ebp - 0x150]
mov eax, 0x679f367b
mov ecx, 0xdcfb90e9
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov ecx, dword [0x1006b138]
mov eax, dword [0x1006b134]
mov edx, ecx
sub edx, 0x88d877f
sub edx, 1
add edx, 0x88d877f
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, 0xdeb55646
mov ecx, 0x9e4273d4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x14c], eax
mov ecx, dword [0x1006b138]
mov eax, dword [0x1006b134]
mov edx, ecx
sub edx, 0x1a4be195
sub edx, 1
add edx, 0x1a4be195
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, 0xdeb55646
mov ecx, 0xfd09168d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov dword [ebp - 0x190], 0x7e7f679f
jmp 0x1000238b
mov eax, dword [0x1006b138]
mov ecx, dword [0x1006b134]
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, 0xb08cbc
mov ecx, 0x8c4cdc4d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov eax, dword [ebp - 0x14c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1006b138]
mov ecx, dword [0x1006b134]
mov edx, eax
sub edx, 0xef7b21dc
sub edx, 1
add edx, 0xef7b21dc
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, 0xb08cbc
mov ecx, 0xda86868b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov dword [ebp - 0x190], 0xbdf234c1
jmp 0x1000238b
mov dword [ebp - 0x190], 0xdc21c39b
jmp 0x1000238b
mov ecx, dword [0x1006b138]
mov eax, dword [0x1006b134]
mov edx, ecx
sub edx, 0x75efd9fe
sub edx, 1
add edx, 0x75efd9fe
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, 0x6370149d
mov ecx, 0xe218faf7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x148], eax
mov eax, dword [0x1006b138]
mov ecx, dword [0x1006b134]
mov edx, eax
add edx, 0x67a0f3ea
sub edx, 1
sub edx, 0x67a0f3ea
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, 0x6370149d
mov ecx, 0xc0e06567
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov dword [ebp - 0x190], 0xe87854ac
jmp 0x1000238b
mov eax, dword [ebp - 0x148]
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 - 0x188], eax
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x190], 0xb75f7d10
jmp 0x1000238b
mov eax, dword [ebp - 0x140]
mov eax, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x144]
add ecx, 0x16647d0d
add ecx, eax
sub ecx, 0x16647d0d
mov eax, dword [ebp - 0x16c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x168]
mov word [eax], 0
mov dword [ebp - 0x190], 0xf6462da4
jmp 0x1000238b
mov eax, dword [0x1006b138]
mov ecx, dword [0x1006b134]
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, 0xd344e08
mov ecx, 0xf5c88839
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov eax, dword [ebp - 0x168]
movzx eax, word [eax]
mov dword [ebp - 0x13c], eax
mov eax, dword [0x1006b138]
mov ecx, dword [0x1006b134]
mov edx, eax
add edx, 0x71a7ee19
sub edx, 1
sub edx, 0x71a7ee19
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, 0xd344e08
mov ecx, 0x3b3d6692
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov dword [ebp - 0x190], 0xe38f7769
jmp 0x1000238b
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x190], 0x3b04f2c4
jmp 0x1000238b
mov eax, dword [ebp - 0x138]
movzx esi, word [eax]
mov edx, dword [ebp - 0x13c]
mov eax, 0x2225c48
mov ecx, 0xb6e47cc9
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax]
sub eax, 0x8d78d1c2
add eax, 0x18
add eax, 0x8d78d1c2
mov ecx, dword [ebp - 0x16c]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
add eax, 0x2795896
add eax, ecx
sub eax, 0x2795896
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x190], 0x16c0628d
jmp 0x1000238b
mov eax, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x168]
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 - 0x130], eax
mov dword [ebp - 0x190], 0x273719b
jmp 0x1000238b
mov ecx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x164]
mov dword [eax], ecx
mov eax, dword [ebp - 0x164]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100183b0
call fcn.1000e6b0
add esp, 8
mov edx, eax
mov eax, 0x6a4b9fcf
mov ecx, 0x7366d382
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov eax, dword [0x1006b138]
mov ecx, dword [0x1006b134]
mov edx, eax
sub edx, 0xe434c490
sub edx, 1
add edx, 0xe434c490
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, 0xe6245784
mov ecx, 0xed2597e0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov eax, dword [ebp - 0x160]
mov dword [eax], 0
mov ecx, dword [0x1006b138]
mov eax, dword [0x1006b134]
mov edx, ecx
sub edx, 0xe264aa26
sub edx, 1
add edx, 0xe264aa26
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, 0xe6245784
mov ecx, 0x90f78c39
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov dword [ebp - 0x190], 0x37570ae4
jmp 0x1000238b
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x164]
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 - 0x160]
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 - 0x15c]
mov byte [eax], cl
mov edx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0x3bc88032
add edx, eax
add edx, 0x3bc88032
mov ecx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub ecx, eax
mov eax, dword [ebp - 0x164]
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.1000c4a0
add esp, 0xc
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x190], 0xa18a1603
jmp 0x1000238b
mov eax, dword [ebp - 0x128]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub esi, 0xd5a89909
add esi, eax
add esi, 0xd5a89909
mov eax, dword [ebp - 0x160]
mov ecx, dword [ebp - 0x12c]
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 - 0x15c]
mov byte [eax], cl
mov dword [ebp - 0x190], 0x7366d382
jmp 0x1000238b
mov ecx, dword [0x1006b138]
mov eax, dword [0x1006b134]
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, 0x946354a5
mov ecx, 0xfd100216
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov eax, dword [0x1006b138]
mov ecx, dword [0x1006b134]
mov edx, eax
add edx, 0x169e13b6
sub edx, 1
sub edx, 0x169e13b6
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, 0x946354a5
mov ecx, 0xf4fad58f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov dword [ebp - 0x190], 0xd57bb1b2
jmp 0x1000238b
mov ecx, dword [0x1006b138]
mov eax, dword [0x1006b134]
mov edx, ecx
add edx, 0x98bbb527
sub edx, 1
sub edx, 0x98bbb527
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, 0x34a05e2d
mov ecx, 0x627f3887
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov eax, dword [ebp - 0x168]
mov ax, word [eax]
mov word [ebp - 0x124], ax
mov ecx, dword [0x1006b138]
mov eax, dword [0x1006b134]
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, 0x34a05e2d
mov ecx, 0xb356d841
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x190], eax
jmp 0x1000238b
mov dword [ebp - 0x190], 0x9fb2f03b
jmp 0x1000238b
mov ax, word [ebp - 0x124]
add ax, 0x1b59
add ax, 1
sub ax, 0x1b59
mov word [ebp - 0x122], ax
mov dword [ebp - 0x190], 0xd23b676b
jmp 0x1000238b
mov eax, dword [ebp - 0x168]
mov cx, word [ebp - 0x122]
mov word [eax], cx
mov dword [ebp - 0x190], 0xf6462da4
jmp 0x1000238b
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x190], 0xb8956189
jmp 0x1000238b
mov eax, dword [ebp - 0x120]
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 [ebp - 0x174]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x190], 0xe1bad89d
jmp 0x1000238b
mov dword [ebp - 0x190], 0xdc21c39b
jmp 0x1000238b
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000b740
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x184], eax
mov dword [ebp - 0x190], 0x49bb9c05
jmp 0x1000238b
mov dword [ebp - 0x190], 0x9e4273d4
jmp 0x1000238b
mov eax, dword [ebp - 0x14c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x190], 0x8c4cdc4d
jmp 0x1000238b
mov dword [ebp - 0x190], 0xe218faf7
jmp 0x1000238b
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x190], 0xf5c88839
jmp 0x1000238b
mov eax, dword [ebp - 0x160]
mov dword [eax], 0
mov dword [ebp - 0x190], 0xed2597e0
jmp 0x1000238b
mov dword [ebp - 0x190], 0xfd100216
jmp 0x1000238b
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x190], 0x627f3887
jmp 0x100010c8