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, 0x194
mov eax, dword [ebp + 8]
mov dword [ebp - 0x198], eax
mov eax, dword [0x1003a600]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x194], 0x366ba5b0
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x19c], eax
sub eax, 0x81170e90
je 0x10001ff0
jmp 0x100010e4
mov eax, dword [ebp - 0x19c]
sub eax, 0x84b38d47
je 0x100026c2
jmp 0x100010fa
mov eax, dword [ebp - 0x19c]
sub eax, 0x8c725b97
je 0x100018de
jmp 0x10001110
mov eax, dword [ebp - 0x19c]
sub eax, 0x8e0830c1
je 0x10001bce
jmp 0x10001126
mov eax, dword [ebp - 0x19c]
sub eax, 0x919c1325
je 0x10001b20
jmp 0x1000113c
mov eax, dword [ebp - 0x19c]
sub eax, 0x92e2e9da
je 0x10001df8
jmp 0x10001152
mov eax, dword [ebp - 0x19c]
sub eax, 0x9318e876
je 0x100023dc
jmp 0x10001168
mov eax, dword [ebp - 0x19c]
sub eax, 0x95486b8b
je 0x10002337
jmp 0x1000117e
mov eax, dword [ebp - 0x19c]
sub eax, 0x96b8273e
je 0x100023cd
jmp 0x10001194
mov eax, dword [ebp - 0x19c]
sub eax, 0x9e7c2a57
je 0x100027cf
jmp 0x100011aa
mov eax, dword [ebp - 0x19c]
sub eax, 0xa1abbdb2
je 0x10002035
jmp 0x100011c0
mov eax, dword [ebp - 0x19c]
sub eax, 0xa22b20ca
je 0x10002124
jmp 0x100011d6
mov eax, dword [ebp - 0x19c]
sub eax, 0xa29e5b37
je 0x10002448
jmp 0x100011ec
mov eax, dword [ebp - 0x19c]
sub eax, 0xa6d1b506
je 0x10002647
jmp 0x10001202
mov eax, dword [ebp - 0x19c]
sub eax, 0xad3b936f
je 0x1000208d
jmp 0x10001218
mov eax, dword [ebp - 0x19c]
sub eax, 0xb0d916ba
je 0x10001cb6
jmp 0x1000122e
mov eax, dword [ebp - 0x19c]
sub eax, 0xb1336cc8
je 0x100019f2
jmp 0x10001244
mov eax, dword [ebp - 0x19c]
sub eax, 0xb43476c8
je 0x100023a1
jmp 0x1000125a
mov eax, dword [ebp - 0x19c]
sub eax, 0xb8982fba
je 0x10002530
jmp 0x10001270
mov eax, dword [ebp - 0x19c]
sub eax, 0xb928f357
je 0x100023f7
jmp 0x10001286
mov eax, dword [ebp - 0x19c]
sub eax, 0xb9c75a53
je 0x10001e59
jmp 0x1000129c
mov eax, dword [ebp - 0x19c]
sub eax, 0xbd380166
je 0x10001b41
jmp 0x100012b2
mov eax, dword [ebp - 0x19c]
sub eax, 0xbf860a70
je 0x10001d60
jmp 0x100012c8
mov eax, dword [ebp - 0x19c]
sub eax, 0xc4b90d13
je 0x10001a01
jmp 0x100012de
mov eax, dword [ebp - 0x19c]
sub eax, 0xc846732a
je 0x100023b0
jmp 0x100012f4
mov eax, dword [ebp - 0x19c]
sub eax, 0xd1aacb4b
je 0x100022ee
jmp 0x1000130a
mov eax, dword [ebp - 0x19c]
sub eax, 0xd3cc3961
je 0x10001dce
jmp 0x10001320
mov eax, dword [ebp - 0x19c]
sub eax, 0xd7528436
je 0x10001fa3
jmp 0x10001336
mov eax, dword [ebp - 0x19c]
sub eax, 0xd9561c28
je 0x10001a52
jmp 0x1000134c
mov eax, dword [ebp - 0x19c]
sub eax, 0xdbc5e882
je 0x10002739
jmp 0x10001362
mov eax, dword [ebp - 0x19c]
sub eax, 0xdce79094
je 0x100021e2
jmp 0x10001378
mov eax, dword [ebp - 0x19c]
sub eax, 0xe3cf9381
je 0x1000271b
jmp 0x1000138e
mov eax, dword [ebp - 0x19c]
sub eax, 0xe94a7105
je 0x10002273
jmp 0x100013a4
mov eax, dword [ebp - 0x19c]
sub eax, 0xec07e4ab
je 0x100025d1
jmp 0x100013ba
mov eax, dword [ebp - 0x19c]
sub eax, 0xf0602720
je 0x10001851
jmp 0x100013d0
mov eax, dword [ebp - 0x19c]
sub eax, 0xf0a64991
je 0x10001b6b
jmp 0x100013e6
mov eax, dword [ebp - 0x19c]
sub eax, 0xf5c1fc5e
je 0x10001697
jmp 0x100013fc
mov eax, dword [ebp - 0x19c]
sub eax, 0xf63cd7ac
je 0x100021f1
jmp 0x10001412
mov eax, dword [ebp - 0x19c]
sub eax, 0xf89bcd68
je 0x10002748
jmp 0x10001428
mov eax, dword [ebp - 0x19c]
sub eax, 0xfc481332
je 0x100017d8
jmp 0x1000143e
mov eax, dword [ebp - 0x19c]
sub eax, 0x6f0016
je 0x10001808
jmp 0x10001454
mov eax, dword [ebp - 0x19c]
sub eax, 0x773e64b
je 0x10001cd1
jmp 0x1000146a
mov eax, dword [ebp - 0x19c]
sub eax, 0x90e51f6
je 0x100025c2
jmp 0x10001480
mov eax, dword [ebp - 0x19c]
sub eax, 0x141bdf0c
je 0x1000170d
jmp 0x10001496
mov eax, dword [ebp - 0x19c]
sub eax, 0x1afae5d7
je 0x10001f94
jmp 0x100014ac
mov eax, dword [ebp - 0x19c]
sub eax, 0x1f7b7799
je 0x10001b50
jmp 0x100014c2
mov eax, dword [ebp - 0x19c]
sub eax, 0x24b511a7
je 0x10001e92
jmp 0x100014d8
mov eax, dword [ebp - 0x19c]
sub eax, 0x29608c93
je 0x100025e2
jmp 0x100014ee
mov eax, dword [ebp - 0x19c]
sub eax, 0x2a4bac43
je 0x100024ab
jmp 0x10001504
mov eax, dword [ebp - 0x19c]
sub eax, 0x2d02cf85
je 0x10001c95
jmp 0x1000151a
mov eax, dword [ebp - 0x19c]
sub eax, 0x2f1ac3ab
je 0x100024ba
jmp 0x10001530
mov eax, dword [ebp - 0x19c]
sub eax, 0x321d3391
je 0x10001cf2
jmp 0x10001546
mov eax, dword [ebp - 0x19c]
sub eax, 0x366ba5b0
je 0x1000167f
jmp 0x1000155c
mov eax, dword [ebp - 0x19c]
sub eax, 0x51829f2e
je 0x100018cf
jmp 0x10001572
mov eax, dword [ebp - 0x19c]
sub eax, 0x52e1cea2
je 0x100027f0
jmp 0x10001588
mov eax, dword [ebp - 0x19c]
sub eax, 0x53b7ecdd
je 0x100022df
jmp 0x1000159e
mov eax, dword [ebp - 0x19c]
sub eax, 0x568f3452
je 0x100027c0
jmp 0x100015b4
mov eax, dword [ebp - 0x19c]
sub eax, 0x5703222a
je 0x100020ae
jmp 0x100015ca
mov eax, dword [ebp - 0x19c]
sub eax, 0x598a5846
je 0x10001fcf
jmp 0x100015e0
mov eax, dword [ebp - 0x19c]
sub eax, 0x6d93f029
je 0x100017f9
jmp 0x100015f6
mov eax, dword [ebp - 0x19c]
sub eax, 0x74d0d788
je 0x10001f08
jmp 0x1000160c
mov eax, dword [ebp - 0x19c]
sub eax, 0x7728d271
je 0x10001954
jmp 0x10001622
mov eax, dword [ebp - 0x19c]
sub eax, 0x77ec9cf2
je 0x10001c44
jmp 0x10001638
mov eax, dword [ebp - 0x19c]
sub eax, 0x7807f067
je 0x10002683
jmp 0x1000164e
mov eax, dword [ebp - 0x19c]
sub eax, 0x78ff5d5d
je 0x10001ddd
push eax
mov eax, esp
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x194], 0xf5c1fc5e
jmp 0x1000281e
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
mov edx, ecx
add edx, 0x325ff552
sub edx, 1
sub edx, 0x325ff552
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, 0x29608c93
mov ecx, 0x141bdf0c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov eax, dword [ebp - 0x198]
push eax
mov ecx, esp
mov dword [ebp - 0x164], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x160], ecx
mov dword [ebp - 0x16c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x170], 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.1000cbb0
add esp, 0xc
mov eax, dword [ebp - 0x16c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x174], eax
cmp dword [ebp - 0x174], 0
setne al
and al, 1
mov byte [ebp - 0x15a], al
mov eax, dword [0x1003b940]
mov ecx, dword [0x1003b93c]
mov edx, eax
sub edx, 0xcde02a12
sub edx, 1
add edx, 0xcde02a12
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, 0x29608c93
mov ecx, 0xfc481332
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dl, byte [ebp - 0x15a]
mov eax, 0x6d93f029
mov ecx, 0x6f0016
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dword [ebp - 0x194], 0xec07e4ab
jmp 0x1000281e
mov eax, dword [0x1003b940]
mov ecx, dword [0x1003b93c]
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, 0xa6d1b506
mov ecx, 0xf0602720
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov ecx, dword [ebp - 0x174]
mov edx, dword [ebp - 0x170]
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 [0x1003b940]
mov ecx, dword [0x1003b93c]
mov edx, eax
sub edx, 0xaad8866a
sub edx, 1
add edx, 0xaad8866a
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, 0xa6d1b506
mov ecx, 0x51829f2e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dword [ebp - 0x194], 0x8c725b97
jmp 0x1000281e
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
mov edx, ecx
add edx, 0x6ba80e9d
sub edx, 1
sub edx, 0x6ba80e9d
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, 0x7807f067
mov ecx, 0x7728d271
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x174]
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 ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
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, 0x7807f067
mov ecx, 0xb1336cc8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dword [ebp - 0x194], 0xc4b90d13
jmp 0x1000281e
mov eax, dword [0x1003b940]
mov ecx, dword [0x1003b93c]
mov edx, eax
add edx, 0x7a96ee62
sub edx, 1
sub edx, 0x7a96ee62
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, 0x84b38d47
mov ecx, 0xd9561c28
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
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 - 0x17c], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x17c], eax
sete al
and al, 1
mov byte [ebp - 0x159], al
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
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, 0x84b38d47
mov ecx, 0x919c1325
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dl, byte [ebp - 0x159]
mov eax, 0x1f7b7799
mov ecx, 0xbd380166
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dword [ebp - 0x194], 0xec07e4ab
jmp 0x1000281e
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x194], 0xf0a64991
jmp 0x1000281e
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 - 0x180], eax
cmp dword [ebp - 0x180], 0
setne al
and al, 1
mov byte [ebp - 0x151], al
mov dword [ebp - 0x194], 0x8e0830c1
jmp 0x1000281e
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
mov edx, ecx
add edx, 0xf98d5bfc
sub edx, 1
sub edx, 0xf98d5bfc
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, 0xe3cf9381
mov ecx, 0x77ec9cf2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov eax, dword [0x1003b940]
mov ecx, dword [0x1003b93c]
mov edx, eax
sub edx, 0xa1ca233f
sub edx, 1
add edx, 0xa1ca233f
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, 0xe3cf9381
mov ecx, 0x2d02cf85
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dl, byte [ebp - 0x151]
mov eax, 0xb0d916ba
mov ecx, 0x78ff5d5d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x194], 0x773e64b
jmp 0x1000281e
mov eax, dword [ebp - 0x150]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x194], 0x321d3391
jmp 0x1000281e
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
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, 0x7cc24066
mov ecx, 0xbf860a70
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
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, 0x7cc24066
mov ecx, 0xd3cc3961
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dword [ebp - 0x194], 0xec07e4ab
jmp 0x1000281e
mov eax, dword [ebp - 0x14c]
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 - 0x184], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x194], 0xb9c75a53
jmp 0x1000281e
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x148]
sub eax, 0xb520a393
add eax, ecx
add eax, 0xb520a393
mov dword [ebp - 0x18c], eax
mov word [ebp - 0x18e], 0
mov dword [ebp - 0x194], 0x24b511a7
jmp 0x1000281e
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
mov edx, ecx
add edx, 0xb1f6a5d
sub edx, 1
sub edx, 0xb1f6a5d
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, 0xdbc5e882
mov ecx, 0x74d0d788
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
movzx eax, word [ebp - 0x18e]
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x18c]
mov ax, word [eax + 6]
mov word [ebp - 0x140], ax
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
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, 0xdbc5e882
mov ecx, 0x1afae5d7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dword [ebp - 0x194], 0xd7528436
jmp 0x1000281e
mov ax, word [ebp - 0x140]
movzx ecx, ax
mov eax, dword [ebp - 0x144]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x13d], al
mov dword [ebp - 0x194], 0x598a5846
jmp 0x1000281e
mov dl, byte [ebp - 0x13d]
mov eax, 0x9318e876
mov ecx, 0x81170e90
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov eax, dword [ebp - 0x18c]
xor ecx, ecx
sub ecx, 0x18
sub eax, ecx
mov ecx, dword [ebp - 0x18c]
movzx ecx, word [ecx + 0x14]
add eax, 0x76084faa
add eax, ecx
sub eax, 0x76084faa
mov dword [ebp - 0x13c], eax
movzx eax, word [ebp - 0x18e]
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x194], 0xa1abbdb2
jmp 0x1000281e
mov eax, dword [ebp - 0x138]
imul edx, eax, 0x28
mov ecx, dword [ebp - 0x13c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x168]
mov dword [eax], ecx
mov eax, dword [ebp - 0x168]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x100183b0
call fcn.1000ef20
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x131], al
mov dword [ebp - 0x194], 0xad3b936f
jmp 0x1000281e
mov dl, byte [ebp - 0x131]
mov eax, 0x5703222a
mov ecx, 0x53b7ecdd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
mov edx, ecx
sub edx, 0xb295e0c4
sub edx, 1
add edx, 0xb295e0c4
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, 0xf89bcd68
mov ecx, 0xa22b20ca
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
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 - 0x178]
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0x891d2a7a
add edx, eax
add edx, 0x891d2a7a
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 eax, dword [ebp - 0x178]
mov dword [ebp - 0x130], eax
mov eax, dword [0x1003b940]
mov ecx, dword [0x1003b93c]
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, 0xf89bcd68
mov ecx, 0xdce79094
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dword [ebp - 0x194], 0xf63cd7ac
jmp 0x1000281e
mov edx, dword [ebp - 0x130]
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 - 0x184]
mov eax, dword [ebp - 0x168]
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 - 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.1000cd10
add esp, 0xc
mov eax, dword [ebp - 0x164]
mov eax, dword [eax]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x194], 0xe94a7105
jmp 0x1000281e
mov eax, dword [ebp - 0x128]
mov edx, dword [eax + 8]
mov ecx, dword [ebp - 0x178]
mov eax, dword [ebp - 0x168]
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 esi, esi
sub esi, eax
mov eax, dword [ebp - 0x164]
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 - 0x160]
mov byte [eax], cl
mov dword [ebp - 0x194], 0x53b7ecdd
jmp 0x1000281e
mov dword [ebp - 0x194], 0xd1aacb4b
jmp 0x1000281e
mov eax, dword [0x1003b940]
mov ecx, dword [0x1003b93c]
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, 0x568f3452
mov ecx, 0x95486b8b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov ax, word [ebp - 0x18e]
xor ecx, ecx
sub cx, ax
xor eax, eax
sub ax, 1
add cx, ax
xor eax, eax
sub ax, cx
mov word [ebp - 0x122], ax
mov eax, dword [0x1003b940]
mov ecx, dword [0x1003b93c]
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, 0x568f3452
mov ecx, 0xb43476c8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dword [ebp - 0x194], 0xc846732a
jmp 0x1000281e
mov ax, word [ebp - 0x122]
mov word [ebp - 0x18e], ax
mov dword [ebp - 0x194], 0x96b8273e
jmp 0x1000281e
mov dword [ebp - 0x194], 0x24b511a7
jmp 0x1000281e
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x194], 0xb928f357
jmp 0x1000281e
mov eax, dword [0x1003b940]
mov ecx, dword [0x1003b93c]
mov edx, eax
add edx, 0x377fc1b6
sub edx, 1
sub edx, 0x377fc1b6
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, 0x9e7c2a57
mov ecx, 0xa29e5b37
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1003b940]
mov ecx, dword [0x1003b93c]
mov edx, eax
sub edx, 0x23e216ee
sub edx, 1
add edx, 0x23e216ee
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, 0x9e7c2a57
mov ecx, 0x2a4bac43
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dword [ebp - 0x194], 0x2f1ac3ab
jmp 0x1000281e
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
mov edx, ecx
sub edx, 0x2d076aa0
sub edx, 1
add edx, 0x2d076aa0
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, 0x52e1cea2
mov ecx, 0xb8982fba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x170]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x1003b940]
mov eax, dword [0x1003b93c]
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, 0x52e1cea2
mov ecx, 0x90e51f6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x194], eax
jmp 0x1000281e
mov dword [ebp - 0x194], 0xec07e4ab
jmp 0x1000281e
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1000bfb0
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x16c], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x170], 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.1000cbb0
add esp, 0xc
mov eax, dword [ebp - 0x16c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x174], eax
mov dword [ebp - 0x194], 0x141bdf0c
jmp 0x1000281e
mov ecx, dword [ebp - 0x174]
mov edx, dword [ebp - 0x170]
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 - 0x194], 0xf0602720
jmp 0x1000281e
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x174]
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 - 0x194], 0x7728d271
jmp 0x1000281e
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 - 0x17c], eax
mov dword [ebp - 0x194], 0xd9561c28
jmp 0x1000281e
mov dword [ebp - 0x194], 0x77ec9cf2
jmp 0x1000281e
mov dword [ebp - 0x194], 0x74d0d788
jmp 0x1000281e
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 - 0x178]
mov eax, dword [ebp - 0x168]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub edx, 0xf94ba326
add edx, eax
add edx, 0xf94ba326
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 dword [ebp - 0x194], 0xa22b20ca
jmp 0x1000281e
mov dword [ebp - 0x194], 0x95486b8b
jmp 0x1000281e
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x194], 0xa29e5b37
jmp 0x1000281e
mov eax, dword [ebp - 0x180]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x170]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x194], 0xb8982fba
jmp 0x100010c8