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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x19c
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1a4], eax
mov eax, dword [0x10068800]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1a0], 0x2eb200f0
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], eax
sub eax, 0x8024a2aa
je 0x10001da8
jmp 0x100011d5
mov eax, dword [ebp - 0x1a8]
sub eax, 0x85d69329
je 0x100020b6
jmp 0x100011eb
mov eax, dword [ebp - 0x1a8]
sub eax, 0x8ab55729
je 0x100017eb
jmp 0x10001201
mov eax, dword [ebp - 0x1a8]
sub eax, 0x988de152
je 0x10001e72
jmp 0x10001217
mov eax, dword [ebp - 0x1a8]
sub eax, 0x9c0d0b26
je 0x10001a64
jmp 0x1000122d
mov eax, dword [ebp - 0x1a8]
sub eax, 0x9efb8dc1
je 0x1000228a
jmp 0x10001243
mov eax, dword [ebp - 0x1a8]
sub eax, 0x9f29e35c
je 0x10001aee
jmp 0x10001259
mov eax, dword [ebp - 0x1a8]
sub eax, 0xa494153f
je 0x10002040
jmp 0x1000126f
mov eax, dword [ebp - 0x1a8]
sub eax, 0xa49d711e
je 0x1000204f
jmp 0x10001285
mov eax, dword [ebp - 0x1a8]
sub eax, 0xa8d607b5
je 0x10002138
jmp 0x1000129b
mov eax, dword [ebp - 0x1a8]
sub eax, 0xb191c3a8
je 0x10001d31
jmp 0x100012b1
mov eax, dword [ebp - 0x1a8]
sub eax, 0xb4c04956
je 0x100020e7
jmp 0x100012c7
mov eax, dword [ebp - 0x1a8]
sub eax, 0xb5046597
je 0x10002097
jmp 0x100012dd
mov eax, dword [ebp - 0x1a8]
sub eax, 0xb5fa68af
je 0x10002301
jmp 0x100012f3
mov eax, dword [ebp - 0x1a8]
sub eax, 0xb65ae0e3
je 0x100023d7
jmp 0x10001309
mov eax, dword [ebp - 0x1a8]
sub eax, 0xbc0c85b2
je 0x10001d6f
jmp 0x1000131f
mov eax, dword [ebp - 0x1a8]
sub eax, 0xbe00dab6
je 0x100018b7
jmp 0x10001335
mov eax, dword [ebp - 0x1a8]
sub eax, 0xc772acc2
je 0x10001fab
jmp 0x1000134b
mov eax, dword [ebp - 0x1a8]
sub eax, 0xcfc31b71
je 0x100016ed
jmp 0x10001361
mov eax, dword [ebp - 0x1a8]
sub eax, 0xd2d86c5f
je 0x10001acd
jmp 0x10001377
mov eax, dword [ebp - 0x1a8]
sub eax, 0xd50788a8
je 0x10002310
jmp 0x1000138d
mov eax, dword [ebp - 0x1a8]
sub eax, 0xdb2cb7a4
je 0x100016a4
jmp 0x100013a3
mov eax, dword [ebp - 0x1a8]
sub eax, 0xdfc19422
je 0x10001b2c
jmp 0x100013b9
mov eax, dword [ebp - 0x1a8]
sub eax, 0xe2cb25e2
je 0x1000189c
jmp 0x100013cf
mov eax, dword [ebp - 0x1a8]
sub eax, 0xec23170e
je 0x10001c5d
jmp 0x100013e5
mov eax, dword [ebp - 0x1a8]
sub eax, 0xec3208a8
je 0x100021e1
jmp 0x100013fb
mov eax, dword [ebp - 0x1a8]
sub eax, 0xf7dddbee
je 0x1000188d
jmp 0x10001411
mov eax, dword [ebp - 0x1a8]
sub eax, 0xfd0ca1ee
je 0x10001d0b
jmp 0x10001427
mov eax, dword [ebp - 0x1a8]
sub eax, 0x4f1e988
je 0x10001a47
jmp 0x1000143d
mov eax, dword [ebp - 0x1a8]
sub eax, 0x82799f4
je 0x100023a4
jmp 0x10001453
mov eax, dword [ebp - 0x1a8]
sub eax, 0x10e3f637
je 0x10001f9c
jmp 0x10001469
mov eax, dword [ebp - 0x1a8]
sub eax, 0x15615d5e
je 0x10001ec3
jmp 0x1000147f
mov eax, dword [ebp - 0x1a8]
sub eax, 0x250b7815
je 0x100019e7
jmp 0x10001495
mov eax, dword [ebp - 0x1a8]
sub eax, 0x2eb200f0
je 0x10001668
jmp 0x100014ab
mov eax, dword [ebp - 0x1a8]
sub eax, 0x2fc6d23a
je 0x100021f0
jmp 0x100014c1
mov eax, dword [ebp - 0x1a8]
sub eax, 0x337989ce
je 0x10001b0b
jmp 0x100014d7
mov eax, dword [ebp - 0x1a8]
sub eax, 0x36761d1d
je 0x1000236c
jmp 0x100014ed
mov eax, dword [ebp - 0x1a8]
sub eax, 0x36ca7f84
je 0x100017ca
jmp 0x10001503
mov eax, dword [ebp - 0x1a8]
sub eax, 0x37fabf56
je 0x1000231f
jmp 0x10001519
mov eax, dword [ebp - 0x1a8]
sub eax, 0x38d1e047
je 0x10001a38
jmp 0x1000152f
mov eax, dword [ebp - 0x1a8]
sub eax, 0x3a70c562
je 0x100021d2
jmp 0x10001545
mov eax, dword [ebp - 0x1a8]
sub eax, 0x3f59a4dd
je 0x10001c6c
jmp 0x1000155b
mov eax, dword [ebp - 0x1a8]
sub eax, 0x40c36dbf
je 0x100018ff
jmp 0x10001571
mov eax, dword [ebp - 0x1a8]
sub eax, 0x4b73e580
je 0x10001b58
jmp 0x10001587
mov eax, dword [ebp - 0x1a8]
sub eax, 0x552fe4e3
je 0x10001ced
jmp 0x1000159d
mov eax, dword [ebp - 0x1a8]
sub eax, 0x5e3fe7b8
je 0x1000229c
jmp 0x100015b3
mov eax, dword [ebp - 0x1a8]
sub eax, 0x5e55131b
je 0x10001bce
jmp 0x100015c9
mov eax, dword [ebp - 0x1a8]
sub eax, 0x634a80cd
je 0x10002239
jmp 0x100015df
mov eax, dword [ebp - 0x1a8]
sub eax, 0x6dd6d7e0
je 0x10001e05
jmp 0x100015f5
mov eax, dword [ebp - 0x1a8]
sub eax, 0x7147bd8e
je 0x10001b3b
jmp 0x1000160b
mov eax, dword [ebp - 0x1a8]
sub eax, 0x737b8837
je 0x10001996
jmp 0x10001621
mov eax, dword [ebp - 0x1a8]
sub eax, 0x77fc29fd
je 0x1000183c
jmp 0x10001637
mov eax, dword [ebp - 0x1a8]
sub eax, 0x7cd5c965
je 0x10001cbb
jmp 0x1000164d
mov eax, dword [ebp - 0x1a8]
sub eax, 0x7e199cc9
je 0x1000206e
jmp 0x10001663
jmp 0x100023e1
push eax
mov eax, esp
mov dword [ebp - 0x18c], eax
push eax
mov eax, esp
mov dword [ebp - 0x188], eax
push eax
mov eax, esp
mov dword [ebp - 0x184], eax
push eax
mov eax, esp
mov dword [ebp - 0x180], eax
push eax
mov eax, esp
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x1a0], 0xdb2cb7a4
jmp 0x100023e1
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
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, 0x5e3fe7b8
mov ecx, 0xcfc31b71
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [ebp - 0x1a4]
push eax
mov ecx, esp
mov dword [ebp - 0x178], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x174], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x170], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x16c], ecx
mov dword [ebp - 0x190], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x194], 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.1000cd40
add esp, 0xc
mov eax, dword [ebp - 0x190]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x198], eax
cmp dword [ebp - 0x198], 0
setne al
and al, 1
mov byte [ebp - 0x165], al
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
mov edx, eax
add edx, 0x65d6b20f
sub edx, 1
sub edx, 0x65d6b20f
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, 0x5e3fe7b8
mov ecx, 0x36ca7f84
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov dl, byte [ebp - 0x165]
mov eax, 0x8ab55729
mov ecx, 0xe2cb25e2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
mov edx, eax
sub edx, 0xe8db5d3b
sub edx, 1
add edx, 0xe8db5d3b
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, 0xb5fa68af
mov ecx, 0x77fc29fd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
mov edx, eax
add edx, 0x2e1a89b
sub edx, 1
sub edx, 0x2e1a89b
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, 0xb5fa68af
mov ecx, 0xf7dddbee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0x2fc6d23a
jmp 0x100023e1
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x1a0], 0xbe00dab6
jmp 0x100023e1
mov edx, dword [ebp - 0x194]
mov ecx, 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 - 0x19c], eax
mov dword [ebp - 0x1a0], 0x40c36dbf
jmp 0x100023e1
lea eax, [ebp - 0x114]
mov ecx, dword [ebp - 0x198]
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 ecx, eax
mov eax, dword [ebp - 0x18c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x18c]
mov esi, 0xffffffff
mov eax, 0x4f1e988
mov ecx, 0x737b8837
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
mov edx, eax
sub edx, 0x5d488549
sub edx, 1
add edx, 0x5d488549
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, 0xd50788a8
mov ecx, 0x250b7815
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
mov edx, eax
sub edx, 0x986c1fe
sub edx, 1
add edx, 0x986c1fe
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, 0xd50788a8
mov ecx, 0x38d1e047
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0x2fc6d23a
jmp 0x100023e1
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x1a0], 0x9c0d0b26
jmp 0x100023e1
mov eax, dword [ebp - 0x160]
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 - 0x188]
mov dword [eax], ecx
mov eax, dword [ebp - 0x188]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x159], al
mov dword [ebp - 0x1a0], 0xd2d86c5f
jmp 0x100023e1
mov dl, byte [ebp - 0x159]
mov eax, 0x9f29e35c
mov ecx, 0x7147bd8e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1a0], 0x337989ce
jmp 0x100023e1
mov eax, dword [ebp - 0x158]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a0], 0xdfc19422
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0x2fc6d23a
jmp 0x100023e1
mov eax, dword [ebp - 0x188]
mov eax, dword [eax]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x1a0], 0x4b73e580
jmp 0x100023e1
mov ecx, dword [0x10069b40]
mov eax, dword [0x10069b3c]
mov edx, ecx
add edx, 0x87c82296
sub edx, 1
sub edx, 0x87c82296
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, 0x37fabf56
mov ecx, 0x5e55131b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [ebp - 0x154]
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 - 0x184]
mov dword [eax], ecx
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
mov edx, eax
sub edx, 0x3ae7ce37
sub edx, 1
add edx, 0x3ae7ce37
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, 0x37fabf56
mov ecx, 0xec23170e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0x3f59a4dd
jmp 0x100023e1
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x180]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x180]
mov eax, dword [eax]
mov eax, dword [eax + 0x3c]
sub ecx, 0x2cfc29a6
add ecx, eax
add ecx, 0x2cfc29a6
mov eax, dword [ebp - 0x17c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x178]
mov word [eax], 0
mov dword [ebp - 0x1a0], 0x7cd5c965
jmp 0x100023e1
mov eax, dword [ebp - 0x178]
movzx eax, word [eax]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
add eax, 4
add eax, 2
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x1a0], 0x552fe4e3
jmp 0x100023e1
mov eax, dword [ebp - 0x14c]
movzx eax, word [eax]
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x1a0], 0xfd0ca1ee
jmp 0x100023e1
mov edx, dword [ebp - 0x150]
mov esi, dword [ebp - 0x148]
mov eax, 0x85d69329
mov ecx, 0xb191c3a8
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [ebp - 0x17c]
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 dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax]
movzx eax, word [eax + 0x14]
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x1a0], 0xbc0c85b2
jmp 0x100023e1
mov eax, dword [ebp - 0x144]
mov edx, dword [ebp - 0x140]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0x178]
movzx eax, word [eax]
imul eax, eax, 0x28
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x1a0], 0x8024a2aa
jmp 0x100023e1
mov ecx, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x138]
sub ecx, 0x9902c62f
add ecx, eax
add ecx, 0x9902c62f
mov eax, dword [ebp - 0x174]
mov dword [eax], ecx
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100183b0
call fcn.1000f0b0
add esp, 8
mov edx, eax
mov eax, 0x6dd6d7e0
mov ecx, 0xa494153f
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [ebp - 0x170]
mov dword [eax], 0
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0xe13d49eb
add edx, eax
add edx, 0xe13d49eb
mov eax, dword [ebp - 0x170]
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]
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x1a0], 0x988de152
jmp 0x100023e1
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
mov edx, eax
add edx, 0x8ee301d3
sub edx, 1
sub edx, 0x8ee301d3
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, 0x36761d1d
mov ecx, 0x15615d5e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [ebp - 0x134]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x16c]
mov byte [eax], cl
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x174]
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 - 0x130], eax
mov eax, dword [ebp - 0x184]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x174]
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 - 0x12c], eax
mov ecx, dword [0x10069b40]
mov eax, dword [0x10069b3c]
mov edx, ecx
sub edx, 0x2edbd9
sub edx, 1
add edx, 0x2edbd9
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, 0x36761d1d
mov ecx, 0x10e3f637
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0xc772acc2
jmp 0x100023e1
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x12c]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.1000cea0
add esp, 0xc
mov eax, dword [ebp - 0x170]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x174]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x170]
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 - 0x1a0], 0xa494153f
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0xa49d711e
jmp 0x100023e1
mov eax, dword [ebp - 0x178]
mov ax, word [eax]
mov word [ebp - 0x128], ax
mov dword [ebp - 0x1a0], 0x7e199cc9
jmp 0x100023e1
mov ax, word [ebp - 0x128]
add ax, 0xe567
add ax, 1
sub ax, 0xe567
mov word [ebp - 0x126], ax
mov dword [ebp - 0x1a0], 0xb5046597
jmp 0x100023e1
mov eax, dword [ebp - 0x178]
mov cx, word [ebp - 0x126]
mov word [eax], cx
mov dword [ebp - 0x1a0], 0x7cd5c965
jmp 0x100023e1
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x188]
mov eax, dword [eax]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x1a0], 0xb4c04956
jmp 0x100023e1
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
mov edx, eax
add edx, 0xf966f604
sub edx, 1
sub edx, 0xf966f604
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, 0x82799f4
mov ecx, 0xa8d607b5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x194]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x10069b40]
mov eax, dword [0x10069b3c]
mov edx, ecx
sub edx, 0xb8566b8d
sub edx, 1
add edx, 0xb8566b8d
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, 0x82799f4
mov ecx, 0x3a70c562
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0xec3208a8
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0x2fc6d23a
jmp 0x100023e1
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
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, 0xb65ae0e3
mov ecx, 0x634a80cd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov eax, dword [0x10069b40]
mov ecx, dword [0x10069b3c]
mov edx, eax
sub edx, 0xdef2cf03
sub edx, 1
add edx, 0xdef2cf03
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, 0xb65ae0e3
mov ecx, 0x9efb8dc1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x100023e1
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000c140
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x190], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x194], 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.1000cd40
add esp, 0xc
mov eax, dword [ebp - 0x190]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x1a0], 0xcfc31b71
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0x77fc29fd
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0x250b7815
jmp 0x100023e1
mov eax, dword [ebp - 0x154]
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 - 0x184]
mov dword [eax], ecx
mov dword [ebp - 0x1a0], 0x5e55131b
jmp 0x100023e1
mov eax, dword [ebp - 0x134]
cmp eax, 0
setne cl
and cl, 1
mov eax, dword [ebp - 0x16c]
mov byte [eax], cl
mov eax, dword [ebp - 0x174]
mov eax, dword [ebp - 0x184]
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x1a0], 0x15615d5e
jmp 0x100023e1
mov eax, dword [ebp - 0x124]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x194]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x1a0], 0xa8d607b5
jmp 0x100023e1
mov dword [ebp - 0x1a0], 0x634a80cd
jmp 0x100011b9