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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x19c
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1a0], eax
mov eax, dword [0x1006a600]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x19c], 0x629206b2
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x1a4], eax
sub eax, 0x81f7b0cc
je 0x10001d89
jmp 0x100011d4
mov eax, dword [ebp - 0x1a4]
sub eax, 0x83e7934c
je 0x10001ca7
jmp 0x100011ea
mov eax, dword [ebp - 0x1a4]
sub eax, 0x87f59e05
je 0x1000243e
jmp 0x10001200
mov eax, dword [ebp - 0x1a4]
sub eax, 0x908d6093
je 0x10001854
jmp 0x10001216
mov eax, dword [ebp - 0x1a4]
sub eax, 0x91517ffe
je 0x10001e06
jmp 0x1000122c
mov eax, dword [ebp - 0x1a4]
sub eax, 0x942b9c91
je 0x1000251e
jmp 0x10001242
mov eax, dword [ebp - 0x1a4]
sub eax, 0x96999363
je 0x10001f2a
jmp 0x10001258
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa25febd7
je 0x10001d26
jmp 0x1000126e
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa3f57bc3
je 0x100024e2
jmp 0x10001284
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa90369a2
je 0x10002360
jmp 0x1000129a
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa9ce2fac
je 0x10001c3b
jmp 0x100012b0
mov eax, dword [ebp - 0x1a4]
sub eax, 0xaffc2f7d
je 0x10001c09
jmp 0x100012c6
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb2715a51
je 0x10002167
jmp 0x100012dc
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb751da04
je 0x10001b72
jmp 0x100012f2
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb7e55f39
je 0x10001cf0
jmp 0x10001308
mov eax, dword [ebp - 0x1a4]
sub eax, 0xbe5d6113
je 0x10002247
jmp 0x1000131e
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc11d3699
je 0x10001c5c
jmp 0x10001334
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc154b081
je 0x10001afc
jmp 0x1000134a
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc203b72b
je 0x10001aed
jmp 0x10001360
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc26f63e9
je 0x100024c2
jmp 0x10001376
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc77b5c4c
je 0x10001a26
jmp 0x1000138c
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc9ba3bf7
je 0x10001a9c
jmp 0x100013a2
mov eax, dword [ebp - 0x1a4]
sub eax, 0xcfafc1a3
je 0x100017d0
jmp 0x100013b8
mov eax, dword [ebp - 0x1a4]
sub eax, 0xcfc0f1e3
je 0x100024d3
jmp 0x100013ce
mov eax, dword [ebp - 0x1a4]
sub eax, 0xd3e8ba5e
je 0x10002256
jmp 0x100013e4
mov eax, dword [ebp - 0x1a4]
sub eax, 0xd3e9e247
je 0x10001f73
jmp 0x100013fa
mov eax, dword [ebp - 0x1a4]
sub eax, 0xd7dd9441
je 0x100020f1
jmp 0x10001410
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe5696ce1
je 0x10001e57
jmp 0x10001426
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf03b215f
je 0x100023a7
jmp 0x1000143c
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf169dad7
je 0x1000196a
jmp 0x10001452
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf4af7b56
je 0x100020e2
jmp 0x10001468
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf7437b55
je 0x10001f09
jmp 0x1000147e
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf8f1a288
je 0x10001c77
jmp 0x10001494
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfcd7637b
je 0x100018ac
jmp 0x100014aa
mov eax, dword [ebp - 0x1a4]
sub eax, 0xed3658
je 0x1000237d
jmp 0x100014c0
mov eax, dword [ebp - 0x1a4]
sub eax, 0x19e2727
je 0x1000238c
jmp 0x100014d6
mov eax, dword [ebp - 0x1a4]
sub eax, 0x35ad97e
je 0x1000257e
jmp 0x100014ec
mov eax, dword [ebp - 0x1a4]
sub eax, 0x66541b9
je 0x1000262c
jmp 0x10001502
mov eax, dword [ebp - 0x1a4]
sub eax, 0x6803fb5
je 0x10001c18
jmp 0x10001518
mov eax, dword [ebp - 0x1a4]
sub eax, 0x6ac2d08
je 0x100017df
jmp 0x1000152e
mov eax, dword [ebp - 0x1a4]
sub eax, 0x7879f81
je 0x10001e78
jmp 0x10001544
mov eax, dword [ebp - 0x1a4]
sub eax, 0x12d0d116
je 0x10001e93
jmp 0x1000155a
mov eax, dword [ebp - 0x1a4]
sub eax, 0x26b78ad8
je 0x100023c8
jmp 0x10001570
mov eax, dword [ebp - 0x1a4]
sub eax, 0x33a87410
je 0x100022c4
jmp 0x10001586
mov eax, dword [ebp - 0x1a4]
sub eax, 0x34976130
je 0x10002351
jmp 0x1000159c
mov eax, dword [ebp - 0x1a4]
sub eax, 0x3a71ee82
je 0x100024b3
jmp 0x100015b2
mov eax, dword [ebp - 0x1a4]
sub eax, 0x3a9ec207
je 0x10001d5e
jmp 0x100015c8
mov eax, dword [ebp - 0x1a4]
sub eax, 0x3afe3699
je 0x10001fbc
jmp 0x100015de
mov eax, dword [ebp - 0x1a4]
sub eax, 0x411ee750
je 0x1000195b
jmp 0x100015f4
mov eax, dword [ebp - 0x1a4]
sub eax, 0x43160b18
je 0x1000252d
jmp 0x1000160a
mov eax, dword [ebp - 0x1a4]
sub eax, 0x435c4ed8
je 0x1000268e
jmp 0x10001620
mov eax, dword [ebp - 0x1a4]
sub eax, 0x45815854
je 0x10001c98
jmp 0x10001636
mov eax, dword [ebp - 0x1a4]
sub eax, 0x50d5c239
je 0x10001db5
jmp 0x1000164c
mov eax, dword [ebp - 0x1a4]
sub eax, 0x5300b7ec
je 0x1000269d
jmp 0x10001662
mov eax, dword [ebp - 0x1a4]
sub eax, 0x5bafae3c
je 0x10002238
jmp 0x10001678
mov eax, dword [ebp - 0x1a4]
sub eax, 0x629206b2
je 0x100016eb
jmp 0x1000168e
mov eax, dword [ebp - 0x1a4]
sub eax, 0x67ac6156
je 0x10001759
jmp 0x100016a4
mov eax, dword [ebp - 0x1a4]
sub eax, 0x6a622aa6
je 0x1000258d
jmp 0x100016ba
mov eax, dword [ebp - 0x1a4]
sub eax, 0x7d4d092d
je 0x10001863
jmp 0x100016d0
mov eax, dword [ebp - 0x1a4]
sub eax, 0x7dd6cb46
je 0x10001a01
jmp 0x100016e6
jmp 0x100026cb
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
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, 0xcfc0f1e3
mov ecx, 0x67ac6156
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
push eax
mov eax, esp
mov dword [ebp - 0x16c], eax
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
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, 0xcfc0f1e3
mov ecx, 0xcfafc1a3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dword [ebp - 0x19c], 0x6ac2d08
jmp 0x100026cb
mov eax, dword [ebp - 0x1a0]
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.1000bfc0
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, 0x908d6093
mov ecx, 0x7d4d092d
cmp dword [ebp - 0x178], 0
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dword [ebp - 0x19c], 0xc26f63e9
jmp 0x100026cb
mov eax, dword [0x1006b940]
mov ecx, dword [0x1006b93c]
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, 0xa3f57bc3
mov ecx, 0xfcd7637b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
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
lea eax, [ebp - 0x11c]
mov dword [ebp - 0x168], eax
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
mov edx, ecx
sub edx, 0x6d636140
sub edx, 1
add edx, 0x6d636140
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, 0xa3f57bc3
mov ecx, 0x411ee750
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dword [ebp - 0x19c], 0xf169dad7
jmp 0x100026cb
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov dword [ebp - 0x17c], eax
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]
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 eax, dword [ebp - 0x180]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x19c], 0x7dd6cb46
jmp 0x100026cb
mov edx, dword [ebp - 0x164]
mov esi, 0xffffffff
mov eax, 0xc154b081
mov ecx, 0xc77b5c4c
cmp edx, esi
cmove eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
mov edx, ecx
sub edx, 0xc165b4f4
sub edx, 1
add edx, 0xc165b4f4
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, 0x942b9c91
mov ecx, 0xc9ba3bf7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov eax, dword [0x1006b940]
mov ecx, dword [0x1006b93c]
mov edx, eax
sub edx, 0x2657ef16
sub edx, 1
add edx, 0x2657ef16
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, 0x942b9c91
mov ecx, 0xc203b72b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dword [ebp - 0x19c], 0xc26f63e9
jmp 0x100026cb
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
mov edx, ecx
add edx, 0x1359f6e9
sub edx, 1
sub edx, 0x1359f6e9
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, 0x43160b18
mov ecx, 0xb751da04
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
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 - 0x184], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x160], eax
mov eax, dword [0x1006b940]
mov ecx, dword [0x1006b93c]
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, 0x43160b18
mov ecx, 0xaffc2f7d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dword [ebp - 0x19c], 0x6803fb5
jmp 0x100026cb
mov eax, dword [ebp - 0x160]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x159], al
mov dword [ebp - 0x19c], 0xa9ce2fac
jmp 0x100026cb
mov dl, byte [ebp - 0x159]
mov eax, 0xc11d3699
mov ecx, 0x83e7934c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x19c], 0xf8f1a288
jmp 0x100026cb
mov eax, dword [ebp - 0x158]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x19c], 0x45815854
jmp 0x100026cb
mov dword [ebp - 0x19c], 0xc26f63e9
jmp 0x100026cb
mov eax, dword [ebp - 0x184]
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 dword [ebp - 0x19c], 0xb7e55f39
jmp 0x100026cb
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x18c]
add eax, 0x3c
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x19c], 0xa25febd7
jmp 0x100026cb
mov eax, dword [ebp - 0x150]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x154]
sub eax, 0x5335231d
add eax, ecx
add eax, 0x5335231d
mov dword [ebp - 0x190], eax
mov word [ebp - 0x192], 0
mov dword [ebp - 0x19c], 0x3a9ec207
jmp 0x100026cb
movzx eax, word [ebp - 0x192]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x190]
add eax, 4
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x19c], 0x81f7b0cc
jmp 0x100026cb
mov eax, dword [ebp - 0x148]
movzx ecx, word [eax + 2]
mov eax, dword [ebp - 0x14c]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x141], al
mov dword [ebp - 0x19c], 0x50d5c239
jmp 0x100026cb
mov eax, dword [0x1006b940]
mov ecx, dword [0x1006b93c]
mov edx, eax
add edx, 0xe356cc33
sub edx, 1
sub edx, 0xe356cc33
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, 0x35ad97e
mov ecx, 0x91517ffe
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov eax, dword [0x1006b940]
mov ecx, dword [0x1006b93c]
mov edx, eax
add edx, 0xaf9c10a6
sub edx, 1
sub edx, 0xaf9c10a6
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, 0x35ad97e
mov ecx, 0xe5696ce1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dl, byte [ebp - 0x141]
mov eax, 0x19e2727
mov ecx, 0x7879f81
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x19c], 0x12d0d116
jmp 0x100026cb
mov eax, dword [ebp - 0x140]
sub eax, 0x977e764e
add eax, 0x18
add eax, 0x977e764e
mov ecx, dword [ebp - 0x190]
movzx ecx, word [ecx + 0x14]
add eax, 0xc51b743a
add eax, ecx
sub eax, 0xc51b743a
movzx ecx, word [ebp - 0x192]
imul ecx, ecx, 0x28
sub eax, 0x1d7b1441
add eax, ecx
add eax, 0x1d7b1441
mov dword [ebp - 0x198], eax
mov ecx, dword [ebp - 0x198]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100183b0
call fcn.1000e330
add esp, 8
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x19c], 0xf7437b55
jmp 0x100026cb
mov edx, dword [ebp - 0x13c]
mov eax, 0x96999363
mov ecx, 0xbe5d6113
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 8]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x198]
mov ecx, dword [ecx + 0xc]
sub eax, 0x1854aa7e
add eax, ecx
add eax, 0x1854aa7e
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x19c], 0xd3e9e247
jmp 0x100026cb
mov eax, dword [0x1006b940]
mov ecx, dword [0x1006b93c]
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, 0x6a622aa6
mov ecx, 0x3afe3699
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov ecx, dword [ebp - 0x138]
mov edx, dword [ebp - 0x134]
lea eax, [ebp - 0x120]
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 - 0x16c]
mov byte [eax], cl
mov ecx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x198]
mov edx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor edx, edx
sub edx, eax
mov ecx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 0xc]
sub ecx, 0x5360c9db
add ecx, eax
add ecx, 0x5360c9db
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 8]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1000c120
add esp, 0xc
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x12c], eax
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
mov edx, ecx
add edx, 0xfc81c771
sub edx, 1
sub edx, 0xfc81c771
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, 0x6a622aa6
mov ecx, 0xf4af7b56
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dword [ebp - 0x19c], 0xd7dd9441
jmp 0x100026cb
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
mov edx, ecx
sub edx, 0x6370b8d5
sub edx, 1
add edx, 0x6370b8d5
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, 0x66541b9
mov ecx, 0xb2715a51
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov eax, dword [ebp - 0x12c]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 0xc]
sub esi, 0x9a4b96c4
add esi, eax
add esi, 0x9a4b96c4
mov ecx, dword [ebp - 0x130]
lea eax, [ebp - 0x120]
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 - 0x16c]
mov byte [eax], cl
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
mov edx, ecx
sub edx, 0xad07af1e
sub edx, 1
add edx, 0xad07af1e
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, 0x66541b9
mov ecx, 0x5bafae3c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dword [ebp - 0x19c], 0xbe5d6113
jmp 0x100026cb
mov dword [ebp - 0x19c], 0xd3e8ba5e
jmp 0x100026cb
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
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, 0x435c4ed8
mov ecx, 0x33a87410
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov ax, word [ebp - 0x192]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x126], ax
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
mov edx, ecx
sub edx, 0xbd0b9f0d
sub edx, 1
add edx, 0xbd0b9f0d
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, 0x435c4ed8
mov ecx, 0x34976130
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dword [ebp - 0x19c], 0xa90369a2
jmp 0x100026cb
mov ax, word [ebp - 0x126]
mov word [ebp - 0x192], ax
mov dword [ebp - 0x19c], 0xed3658
jmp 0x100026cb
mov dword [ebp - 0x19c], 0x3a9ec207
jmp 0x100026cb
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x19c], 0xf03b215f
jmp 0x100026cb
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x19c], 0x26b78ad8
jmp 0x100026cb
mov ecx, dword [0x1006b940]
mov eax, dword [0x1006b93c]
mov edx, ecx
sub edx, 0x3931a7fe
sub edx, 1
add edx, 0x3931a7fe
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, 0x5300b7ec
mov ecx, 0x87f59e05
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
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 eax, dword [0x1006b940]
mov ecx, dword [0x1006b93c]
mov edx, eax
sub edx, 0xa20ebcbd
sub edx, 1
add edx, 0xa20ebcbd
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, 0x5300b7ec
mov ecx, 0x3a71ee82
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x19c], eax
jmp 0x100026cb
mov dword [ebp - 0x19c], 0xc26f63e9
jmp 0x100026cb
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000b3c0
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x19c], 0x67ac6156
jmp 0x100026cb
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 dword [ebp - 0x19c], 0xfcd7637b
jmp 0x100026cb
mov dword [ebp - 0x19c], 0xc9ba3bf7
jmp 0x100026cb
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 - 0x184], eax
mov dword [ebp - 0x19c], 0xb751da04
jmp 0x100026cb
mov dword [ebp - 0x19c], 0x91517ffe
jmp 0x100026cb
mov ecx, dword [ebp - 0x138]
mov edx, dword [ebp - 0x134]
lea eax, [ebp - 0x120]
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 - 0x16c]
mov byte [eax], cl
mov edx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
sub edx, eax
mov ecx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x198]
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 - 0x198]
mov eax, dword [eax + 8]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1000c120
add esp, 0xc
mov dword [ebp - 0x19c], 0x3afe3699
jmp 0x100026cb
mov eax, dword [ebp - 0x12c]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
sub esi, eax
mov ecx, dword [ebp - 0x130]
lea eax, [ebp - 0x120]
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 - 0x16c]
mov byte [eax], cl
mov dword [ebp - 0x19c], 0xb2715a51
jmp 0x100026cb
mov dword [ebp - 0x19c], 0x33a87410
jmp 0x100026cb
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 - 0x19c], 0x87f59e05
jmp 0x100011b8