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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x188
mov eax, dword [ebp + 8]
mov dword [ebp - 0x190], eax
mov eax, dword [0x10065200]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18c], 0x6153cdea
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x194], eax
sub eax, 0x8539e42e
je 0x10001a78
jmp 0x100010d5
mov eax, dword [ebp - 0x194]
sub eax, 0x865f5613
je 0x10001690
jmp 0x100010eb
mov eax, dword [ebp - 0x194]
sub eax, 0x8b3d7a92
je 0x1000202c
jmp 0x10001101
mov eax, dword [ebp - 0x194]
sub eax, 0x8b91ccfd
je 0x1000188e
jmp 0x10001117
mov eax, dword [ebp - 0x194]
sub eax, 0x8e76d2cb
je 0x10001fc1
jmp 0x1000112d
mov eax, dword [ebp - 0x194]
sub eax, 0x939a53fc
je 0x10001eca
jmp 0x10001143
mov eax, dword [ebp - 0x194]
sub eax, 0x97e6140c
je 0x10001e21
jmp 0x10001159
mov eax, dword [ebp - 0x194]
sub eax, 0x9d4bd219
je 0x1000204a
jmp 0x1000116f
mov eax, dword [ebp - 0x194]
sub eax, 0xa71d5cbe
je 0x100019d8
jmp 0x10001185
mov eax, dword [ebp - 0x194]
sub eax, 0xac2e0575
je 0x1000194d
jmp 0x1000119b
mov eax, dword [ebp - 0x194]
sub eax, 0xaf840441
je 0x10001e97
jmp 0x100011b1
mov eax, dword [ebp - 0x194]
sub eax, 0xb1cc0f9c
je 0x100018df
jmp 0x100011c7
mov eax, dword [ebp - 0x194]
sub eax, 0xb2960a7a
je 0x10001e78
jmp 0x100011dd
mov eax, dword [ebp - 0x194]
sub eax, 0xbbfcf3a6
je 0x1000152f
jmp 0x100011f3
mov eax, dword [ebp - 0x194]
sub eax, 0xcdd7fe0e
je 0x1000170b
jmp 0x10001209
mov eax, dword [ebp - 0x194]
sub eax, 0xd66ccc0d
je 0x10001fd3
jmp 0x1000121f
mov eax, dword [ebp - 0x194]
sub eax, 0xd708e637
je 0x10001bac
jmp 0x10001235
mov eax, dword [ebp - 0x194]
sub eax, 0xdfc81825
je 0x10001a23
jmp 0x1000124b
mov eax, dword [ebp - 0x194]
sub eax, 0xe3656c13
je 0x10001fb2
jmp 0x10001261
mov eax, dword [ebp - 0x194]
sub eax, 0xe3f975b0
je 0x10001c0c
jmp 0x10001277
mov eax, dword [ebp - 0x194]
sub eax, 0xe633e9d3
je 0x10001b36
jmp 0x1000128d
mov eax, dword [ebp - 0x194]
sub eax, 0xe7e3e740
je 0x10001cf2
jmp 0x100012a3
mov eax, dword [ebp - 0x194]
sub eax, 0xeabc67ab
je 0x10001c27
jmp 0x100012b9
mov eax, dword [ebp - 0x194]
sub eax, 0xeed90d47
je 0x100019a8
jmp 0x100012cf
mov eax, dword [ebp - 0x194]
sub eax, 0xf0a7f72f
je 0x1000159d
jmp 0x100012e5
mov eax, dword [ebp - 0x194]
sub eax, 0xf12fe46a
je 0x1000203b
jmp 0x100012fb
mov eax, dword [ebp - 0x194]
sub eax, 0xf5b0ed7b
je 0x10001e30
jmp 0x10001311
mov eax, dword [ebp - 0x194]
sub eax, 0xfbae7ac0
je 0x10001781
jmp 0x10001327
mov eax, dword [ebp - 0x194]
sub eax, 0x7985aa7
je 0x10001abc
jmp 0x1000133d
mov eax, dword [ebp - 0x194]
sub eax, 0x15c2a574
je 0x10001f61
jmp 0x10001353
mov eax, dword [ebp - 0x194]
sub eax, 0x18be9357
je 0x10001eeb
jmp 0x10001369
mov eax, dword [ebp - 0x194]
sub eax, 0x1e02f6be
je 0x100019f3
jmp 0x1000137f
mov eax, dword [ebp - 0x194]
sub eax, 0x1ff66df6
je 0x10001e4f
jmp 0x10001395
mov eax, dword [ebp - 0x194]
sub eax, 0x29fd098d
je 0x100020ba
jmp 0x100013ab
mov eax, dword [ebp - 0x194]
sub eax, 0x2f81d6bb
je 0x10001812
jmp 0x100013c1
mov eax, dword [ebp - 0x194]
sub eax, 0x41ef87f1
je 0x10001b6a
jmp 0x100013d7
mov eax, dword [ebp - 0x194]
sub eax, 0x497a2c15
je 0x10001e12
jmp 0x100013ed
mov eax, dword [ebp - 0x194]
sub eax, 0x4f7f7b39
je 0x100019b7
jmp 0x10001403
mov eax, dword [ebp - 0x194]
sub eax, 0x53e46113
je 0x1000166f
jmp 0x10001419
mov eax, dword [ebp - 0x194]
sub eax, 0x58c4ad40
je 0x1000169f
jmp 0x1000142f
mov eax, dword [ebp - 0x194]
sub eax, 0x5bee0ef7
je 0x10001d43
jmp 0x10001445
mov eax, dword [ebp - 0x194]
sub eax, 0x5bf736b1
je 0x10001b15
jmp 0x1000145b
mov eax, dword [ebp - 0x194]
sub eax, 0x5f56d9b3
je 0x10001ae9
jmp 0x10001471
mov eax, dword [ebp - 0x194]
sub eax, 0x5f5dbb87
je 0x10001a14
jmp 0x10001487
mov eax, dword [ebp - 0x194]
sub eax, 0x6153cdea
je 0x100014e4
jmp 0x1000149d
mov eax, dword [ebp - 0x194]
sub eax, 0x64b5620b
je 0x10001803
jmp 0x100014b3
mov eax, dword [ebp - 0x194]
sub eax, 0x6644f5a5
je 0x1000187f
jmp 0x100014c9
mov eax, dword [ebp - 0x194]
sub eax, 0x7457d52b
je 0x10001aad
jmp 0x100014df
jmp 0x100020c4
mov eax, dword [ebp - 0x190]
push eax
mov ecx, esp
mov dword [ebp - 0x164], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x160], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x15c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x158], ecx
mov dword [ebp - 0x168], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x18c], 0xbbfcf3a6
jmp 0x100020c4
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
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, 0xd66ccc0d
mov ecx, 0xf0a7f72f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x16c], 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.100066a0
add esp, 0xc
mov eax, dword [ebp - 0x168]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x170], eax
cmp dword [ebp - 0x170], 0
setne al
and al, 1
mov byte [ebp - 0x14d], al
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
sub edx, 0xf099e393
sub edx, 1
add edx, 0xf099e393
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, 0xd66ccc0d
mov ecx, 0x53e46113
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov dl, byte [ebp - 0x14d]
mov eax, 0x865f5613
mov ecx, 0x58c4ad40
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov dword [ebp - 0x18c], 0x8e76d2cb
jmp 0x100020c4
mov ecx, dword [ebp - 0x170]
mov edx, dword [ebp - 0x16c]
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 - 0x174], eax
lea eax, [ebp - 0x114]
mov ecx, dword [ebp - 0x170]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov dword [ebp - 0x18c], 0xcdd7fe0e
jmp 0x100020c4
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
add edx, 0xc972bde2
sub edx, 1
sub edx, 0xc972bde2
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, 0x8b3d7a92
mov ecx, 0xfbae7ac0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
lea eax, [ebp - 0x114]
mov dword [ebp - 0x14c], eax
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
add edx, 0xf9635a3c
sub edx, 1
sub edx, 0xf9635a3c
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, 0x8b3d7a92
mov ecx, 0x64b5620b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov dword [ebp - 0x18c], 0x2f81d6bb
jmp 0x100020c4
mov eax, dword [ebp - 0x14c]
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 - 0x178], eax
mov edx, 0xffffffff
mov eax, 0x8b91ccfd
mov ecx, 0x6644f5a5
cmp dword [ebp - 0x178], edx
cmove eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov dword [ebp - 0x18c], 0x8e76d2cb
jmp 0x100020c4
mov eax, dword [ebp - 0x178]
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 - 0x17c], eax
mov dword [ebp - 0x18c], 0xb1cc0f9c
jmp 0x100020c4
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
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, 0xf12fe46a
mov ecx, 0xac2e0575
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
cmp dword [ebp - 0x17c], 0
setne al
and al, 1
mov byte [ebp - 0x145], al
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
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, 0xf12fe46a
mov ecx, 0xeed90d47
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov dword [ebp - 0x18c], 0x4f7f7b39
jmp 0x100020c4
mov dl, byte [ebp - 0x145]
mov eax, 0xa71d5cbe
mov ecx, 0xdfc81825
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x18c], 0x1e02f6be
jmp 0x100020c4
mov eax, dword [ebp - 0x144]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x18c], 0x5f5dbb87
jmp 0x100020c4
mov dword [ebp - 0x18c], 0x8e76d2cb
jmp 0x100020c4
mov eax, dword [ebp - 0x17c]
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 - 0x180], eax
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x184], eax
mov dword [ebp - 0x18c], 0x8539e42e
jmp 0x100020c4
mov eax, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x184]
mov edx, dword [ecx + 0x3c]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x164]
mov word [eax], 0
mov dword [ebp - 0x18c], 0x7457d52b
jmp 0x100020c4
mov dword [ebp - 0x18c], 0x7985aa7
jmp 0x100020c4
mov eax, dword [ebp - 0x164]
movzx eax, word [eax]
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x188]
add eax, 4
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x18c], 0x5f56d9b3
jmp 0x100020c4
mov eax, dword [ebp - 0x13c]
movzx ecx, word [eax + 2]
mov eax, dword [ebp - 0x140]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x135], al
mov dword [ebp - 0x18c], 0x5bf736b1
jmp 0x100020c4
mov dl, byte [ebp - 0x135]
mov eax, 0xaf840441
mov ecx, 0xe633e9d3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov eax, dword [ebp - 0x188]
add eax, 0x9ec8546c
add eax, 0x18
sub eax, 0x9ec8546c
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x18c], 0x41ef87f1
jmp 0x100020c4
mov eax, dword [ebp - 0x130]
movzx edx, word [eax + 0x14]
mov eax, dword [ebp - 0x134]
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 eax, dword [ebp - 0x164]
movzx eax, word [eax]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x18c], 0xd708e637
jmp 0x100020c4
mov eax, dword [ebp - 0x128]
imul edx, eax, 0x28
mov ecx, dword [ebp - 0x12c]
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 - 0x160]
mov dword [eax], ecx
mov eax, dword [ebp - 0x160]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10012190
call fcn.10008a10
add esp, 8
mov edx, eax
mov eax, 0xe3f975b0
mov ecx, 0x97e6140c
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov eax, dword [ebp - 0x15c]
mov dword [eax], 0
mov dword [ebp - 0x18c], 0xeabc67ab
jmp 0x100020c4
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x174]
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xfaa0674
add edx, eax
sub edx, 0xfaa0674
mov eax, dword [ebp - 0x15c]
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 - 0x158]
mov byte [eax], cl
mov ecx, dword [ebp - 0x174]
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
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 - 0x180]
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
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 - 0x160]
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.10006800
add esp, 0xc
mov dword [ebp - 0x18c], 0xe7e3e740
jmp 0x100020c4
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
mov edx, eax
sub edx, 0xacb143dd
sub edx, 1
add edx, 0xacb143dd
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, 0x9d4bd219
mov ecx, 0x5bee0ef7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov eax, dword [ebp - 0x15c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x174]
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
xor eax, eax
sub eax, edi
sub esi, eax
mov eax, dword [ebp - 0x15c]
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 - 0x158]
mov byte [eax], cl
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
add edx, 0x62b42ff8
sub edx, 1
sub edx, 0x62b42ff8
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, 0x9d4bd219
mov ecx, 0x497a2c15
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov dword [ebp - 0x18c], 0x97e6140c
jmp 0x100020c4
mov dword [ebp - 0x18c], 0xf5b0ed7b
jmp 0x100020c4
mov eax, dword [ebp - 0x164]
mov ax, word [eax]
mov word [ebp - 0x124], ax
mov dword [ebp - 0x18c], 0x1ff66df6
jmp 0x100020c4
mov ax, word [ebp - 0x124]
sub ax, 0xd90e
add ax, 1
add ax, 0xd90e
mov word [ebp - 0x122], ax
mov dword [ebp - 0x18c], 0xb2960a7a
jmp 0x100020c4
mov eax, dword [ebp - 0x164]
mov cx, word [ebp - 0x122]
mov word [eax], cx
mov dword [ebp - 0x18c], 0x7985aa7
jmp 0x100020c4
mov eax, dword [ebp - 0x178]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x17c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x18c], 0x939a53fc
jmp 0x100020c4
mov eax, dword [ebp - 0x16c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x18c], 0x18be9357
jmp 0x100020c4
mov ecx, dword [0x10066550]
mov eax, dword [0x1006654c]
mov edx, ecx
add edx, 0x4291fc84
sub edx, 1
sub edx, 0x4291fc84
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, 0x29fd098d
mov ecx, 0x15c2a574
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov eax, dword [0x10066550]
mov ecx, dword [0x1006654c]
mov edx, eax
add edx, 0xc1fdafac
sub edx, 1
sub edx, 0xc1fdafac
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, 0x29fd098d
mov ecx, 0xe3656c13
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x18c], eax
jmp 0x100020c4
mov dword [ebp - 0x18c], 0x8e76d2cb
jmp 0x100020c4
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10005aa0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x16c], 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.100066a0
add esp, 0xc
mov eax, dword [ebp - 0x168]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x18c], 0xf0a7f72f
jmp 0x100020c4
mov dword [ebp - 0x18c], 0xfbae7ac0
jmp 0x100020c4
mov dword [ebp - 0x18c], 0xac2e0575
jmp 0x100020c4
mov eax, dword [ebp - 0x15c]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x174]
mov eax, dword [ebp - 0x160]
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 - 0x15c]
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 - 0x158]
mov byte [eax], cl
mov dword [ebp - 0x18c], 0x5bee0ef7
jmp 0x100020c4
mov dword [ebp - 0x18c], 0x15c2a574
jmp 0x100010b9