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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x1b8
mov eax, dword [ebp + 8]
mov eax, dword [0x1008a880]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x1a0], 0x333fc395
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a4], eax
sub eax, 0x80d99ed3
je 0x1000a9d7
jmp 0x100098ce
mov eax, dword [ebp - 0x1a4]
sub eax, 0x82ef7f98
je 0x1000a0c2
jmp 0x100098e4
mov eax, dword [ebp - 0x1a4]
sub eax, 0x845235ec
je 0x1000b286
jmp 0x100098fa
mov eax, dword [ebp - 0x1a4]
sub eax, 0x8999df2b
je 0x1000aac0
jmp 0x10009910
mov eax, dword [ebp - 0x1a4]
sub eax, 0x8ad11595
je 0x1000aa8d
jmp 0x10009926
mov eax, dword [ebp - 0x1a4]
sub eax, 0x8e7b9bf6
je 0x1000ad7e
jmp 0x1000993c
mov eax, dword [ebp - 0x1a4]
sub eax, 0x9163ab7d
je 0x1000a31c
jmp 0x10009952
mov eax, dword [ebp - 0x1a4]
sub eax, 0x979e6f4b
je 0x1000b33d
jmp 0x10009968
mov eax, dword [ebp - 0x1a4]
sub eax, 0x993c1abd
je 0x1000a46a
jmp 0x1000997e
mov eax, dword [ebp - 0x1a4]
sub eax, 0x9a39f455
je 0x1000aded
jmp 0x10009994
mov eax, dword [ebp - 0x1a4]
sub eax, 0x9d4b75f2
je 0x1000a182
jmp 0x100099aa
mov eax, dword [ebp - 0x1a4]
sub eax, 0x9e622f4e
je 0x1000b435
jmp 0x100099c0
mov eax, dword [ebp - 0x1a4]
sub eax, 0x9eda4697
je 0x1000b29b
jmp 0x100099d6
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa0489619
je 0x1000b2fd
jmp 0x100099ec
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa22c3ece
je 0x1000af04
jmp 0x10009a02
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa78d3564
je 0x1000a6f8
jmp 0x10009a18
mov eax, dword [ebp - 0x1a4]
sub eax, 0xac9510af
je 0x1000a682
jmp 0x10009a2e
mov eax, dword [ebp - 0x1a4]
sub eax, 0xaeaef9a1
je 0x1000a004
jmp 0x10009a44
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb585a6e6
je 0x1000a1a3
jmp 0x10009a5a
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb7c304db
je 0x1000b452
jmp 0x10009a70
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb88c4c64
je 0x1000a3f4
jmp 0x10009a86
mov eax, dword [ebp - 0x1a4]
sub eax, 0xb8c05c8b
je 0x1000b417
jmp 0x10009a9c
mov eax, dword [ebp - 0x1a4]
sub eax, 0xba22aa01
je 0x1000a4e8
jmp 0x10009ab2
mov eax, dword [ebp - 0x1a4]
sub eax, 0xbb6cdc1c
je 0x1000b0aa
jmp 0x10009ac8
mov eax, dword [ebp - 0x1a4]
sub eax, 0xbd0a38dc
je 0x1000b026
jmp 0x10009ade
mov eax, dword [ebp - 0x1a4]
sub eax, 0xbd33565b
je 0x1000a7e8
jmp 0x10009af4
mov eax, dword [ebp - 0x1a4]
sub eax, 0xbfb58373
je 0x1000a615
jmp 0x10009b0a
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc6a808f9
je 0x1000a36d
jmp 0x10009b20
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc90314b1
je 0x1000aa7e
jmp 0x10009b36
mov eax, dword [ebp - 0x1a4]
sub eax, 0xcac7e0b0
je 0x1000a1fa
jmp 0x10009b4c
mov eax, dword [ebp - 0x1a4]
sub eax, 0xcb7e154e
je 0x1000a0b3
jmp 0x10009b62
mov eax, dword [ebp - 0x1a4]
sub eax, 0xcd2f40e7
je 0x1000b212
jmp 0x10009b78
mov eax, dword [ebp - 0x1a4]
sub eax, 0xcf085865
je 0x1000ac50
jmp 0x10009b8e
mov eax, dword [ebp - 0x1a4]
sub eax, 0xcf4455fb
je 0x1000a8ff
jmp 0x10009ba4
mov eax, dword [ebp - 0x1a4]
sub eax, 0xd2000bd0
je 0x1000a1b2
jmp 0x10009bba
mov eax, dword [ebp - 0x1a4]
sub eax, 0xd42f3802
je 0x1000aca1
jmp 0x10009bd0
mov eax, dword [ebp - 0x1a4]
sub eax, 0xd5e7ceb3
je 0x1000ad8d
jmp 0x10009be6
mov eax, dword [ebp - 0x1a4]
sub eax, 0xda1f8798
je 0x1000b362
jmp 0x10009bfc
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe0181ae3
je 0x1000b461
jmp 0x10009c12
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe366b60e
je 0x1000ae36
jmp 0x10009c28
mov eax, dword [ebp - 0x1a4]
sub eax, 0xe53d6b0f
je 0x1000aef5
jmp 0x10009c3e
mov eax, dword [ebp - 0x1a4]
sub eax, 0xea6fa0c7
je 0x1000a503
jmp 0x10009c54
mov eax, dword [ebp - 0x1a4]
sub eax, 0xeaeb750f
je 0x1000ab09
jmp 0x10009c6a
mov eax, dword [ebp - 0x1a4]
sub eax, 0xed81c00a
je 0x1000b107
jmp 0x10009c80
mov eax, dword [ebp - 0x1a4]
sub eax, 0xf7b58f6a
je 0x1000a239
jmp 0x10009c96
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfb4ba0cf
je 0x1000ae45
jmp 0x10009cac
mov eax, dword [ebp - 0x1a4]
sub eax, 0x101775
je 0x1000a77a
jmp 0x10009cc2
mov eax, dword [ebp - 0x1a4]
sub eax, 0xa3ca436
je 0x1000b1fe
jmp 0x10009cd8
mov eax, dword [ebp - 0x1a4]
sub eax, 0xc8a17b1
je 0x1000a889
jmp 0x10009cee
mov eax, dword [ebp - 0x1a4]
sub eax, 0xfd4012e
je 0x1000a797
jmp 0x10009d04
mov eax, dword [ebp - 0x1a4]
sub eax, 0x12af1274
je 0x1000a37c
jmp 0x10009d1a
mov eax, dword [ebp - 0x1a4]
sub eax, 0x155bb036
je 0x1000a96d
jmp 0x10009d30
mov eax, dword [ebp - 0x1a4]
sub eax, 0x186440ec
je 0x1000b426
jmp 0x10009d46
mov eax, dword [ebp - 0x1a4]
sub eax, 0x1c0208b8
je 0x1000b116
jmp 0x10009d5c
mov eax, dword [ebp - 0x1a4]
sub eax, 0x1d03f677
je 0x1000af2d
jmp 0x10009d72
mov eax, dword [ebp - 0x1a4]
sub eax, 0x2427f5c7
je 0x1000abbc
jmp 0x10009d88
mov eax, dword [ebp - 0x1a4]
sub eax, 0x25ba1ec1
je 0x1000b313
jmp 0x10009d9e
mov eax, dword [ebp - 0x1a4]
sub eax, 0x26e3fdf9
je 0x1000a3cd
jmp 0x10009db4
mov eax, dword [ebp - 0x1a4]
sub eax, 0x271dc27d
je 0x1000a606
jmp 0x10009dca
mov eax, dword [ebp - 0x1a4]
sub eax, 0x273a8b0e
je 0x1000a533
jmp 0x10009de0
mov eax, dword [ebp - 0x1a4]
sub eax, 0x2b854e19
je 0x1000a98e
jmp 0x10009df6
mov eax, dword [ebp - 0x1a4]
sub eax, 0x2fa2637a
je 0x1000a113
jmp 0x10009e0c
mov eax, dword [ebp - 0x1a4]
sub eax, 0x331f6068
je 0x1000b25c
jmp 0x10009e22
mov eax, dword [ebp - 0x1a4]
sub eax, 0x333fc395
je 0x10009fb3
jmp 0x10009e38
mov eax, dword [ebp - 0x1a4]
sub eax, 0x39e971c3
je 0x1000a2a6
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
add edx, 0xf1bff142
sub edx, 1
sub edx, 0xf1bff142
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, 0xcd2f40e7
mov ecx, 0xaeaef9a1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x174], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10024a20
mov eax, dword [ebp + 8]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
sub esp, 4
mov dword [ebp - 0x170], eax
mov ecx, dword [0x1008bd3c]
mov eax, dword [0x1008bd38]
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, 0xcd2f40e7
mov ecx, 0xcb7e154e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0x82ef7f98
jmp 0x1000b46b
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
add edx, 0x130a93c6
sub edx, 1
sub edx, 0x130a93c6
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, 0x331f6068
mov ecx, 0x2fa2637a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x178], eax
cmp dword [ebp - 0x178], 0
setne al
and al, 1
mov byte [ebp - 0x169], al
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
sub edx, 0xd2979e09
sub edx, 1
add edx, 0xd2979e09
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, 0x331f6068
mov ecx, 0x9d4b75f2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dl, byte [ebp - 0x169]
mov eax, 0xb585a6e6
mov ecx, 0xd2000bd0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0x63df1406
jmp 0x1000b46b
mov ecx, dword [ebp - 0x178]
mov edx, dword [ebp - 0x174]
lea eax, [ebp - 0x11c]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xc
call sub.KERNEL32.dll_K32GetModuleInformation
sub esp, 0x10
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x1a0], 0xcac7e0b0
jmp 0x1000b46b
lea eax, [ebp - 0x110]
mov ecx, dword [ebp - 0x178]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
sub esp, 0xc
lea eax, [ebp - 0x110]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x1a0], 0xf7b58f6a
jmp 0x1000b46b
mov eax, dword [ebp - 0x168]
xor ecx, ecx
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]
sub esp, 0x1c
mov dword [ebp - 0x180], eax
mov edx, 0xffffffff
mov eax, 0x12af1274
mov ecx, 0x39e971c3
cmp dword [ebp - 0x180], edx
cmove eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
sub edx, 0x6cc79054
sub edx, 1
add edx, 0x6cc79054
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, 0x76e84836
mov ecx, 0xc6a808f9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0x63df1406
jmp 0x1000b46b
mov eax, dword [ebp - 0x180]
xor ecx, ecx
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]
sub esp, 0x18
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x1a0], 0x26e3fdf9
jmp 0x1000b46b
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x1a0], 0xb88c4c64
jmp 0x1000b46b
mov ecx, dword [0x1008bd3c]
mov eax, dword [0x1008bd38]
mov edx, ecx
sub edx, 0x448da008
sub edx, 1
add edx, 0x448da008
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, 0x845235ec
mov ecx, 0x993c1abd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov eax, dword [ebp - 0x160]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x159], al
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
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, 0x845235ec
mov ecx, 0x5e41aa43
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1a0], 0xea6fa0c7
jmp 0x1000b46b
mov eax, dword [ebp - 0x158]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1a0], 0x4a2f9186
jmp 0x1000b46b
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
add edx, 0x4cfa6f51
sub edx, 1
sub edx, 0x4cfa6f51
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, 0x9eda4697
mov ecx, 0x5c6af530
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0xbfb58373
jmp 0x1000b46b
mov eax, dword [ebp - 0x154]
xor ecx, ecx
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]
sub esp, 0x14
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x1a0], 0xac9510af
jmp 0x1000b46b
mov ecx, dword [0x1008bd3c]
mov eax, dword [0x1008bd38]
mov edx, ecx
add edx, 0x46cbec25
sub edx, 1
sub edx, 0x46cbec25
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, 0x63097555
mov ecx, 0xa78d3564
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov eax, dword [ebp - 0x14c]
mov ecx, dword [eax + 0x3c]
mov eax, dword [ebp - 0x150]
sub eax, 0x979c09ff
add eax, ecx
add eax, 0x979c09ff
mov dword [ebp - 0x190], eax
mov word [ebp - 0x192], 0
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
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, 0x63097555
mov ecx, 0x49aed84f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov ax, word [ebp - 0x192]
mov word [ebp - 0x146], ax
mov dword [ebp - 0x1a0], 0xfd4012e
jmp 0x1000b46b
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
add edx, 0x503b9b43
sub edx, 1
sub edx, 0x503b9b43
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, 0xa0489619
mov ecx, 0xbd33565b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov ax, word [ebp - 0x146]
movzx eax, ax
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x140], eax
mov ecx, dword [0x1008bd3c]
mov eax, dword [0x1008bd38]
mov edx, ecx
add edx, 0x7addb5d8
sub edx, 1
sub edx, 0x7addb5d8
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, 0xa0489619
mov ecx, 0x4aacba75
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov ecx, dword [0x1008bd3c]
mov eax, dword [0x1008bd38]
mov edx, ecx
add edx, 0xa984c528
sub edx, 1
sub edx, 0xa984c528
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, 0x25ba1ec1
mov ecx, 0xcf4455fb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov eax, dword [ebp - 0x140]
movzx ecx, word [eax + 6]
mov eax, dword [ebp - 0x144]
cmp eax, ecx
setl al
and al, 1
mov byte [ebp - 0x139], al
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
sub edx, 0x3a50f441
sub edx, 1
add edx, 0x3a50f441
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, 0x25ba1ec1
mov ecx, 0x155bb036
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dl, byte [ebp - 0x139]
mov eax, 0xbd0a38dc
mov ecx, 0x2b854e19
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
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, 0x47137c64
mov ecx, 0x80d99ed3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov eax, dword [ebp - 0x190]
add eax, 0x677745e8
add eax, 0x18
sub eax, 0x677745e8
mov ecx, dword [ebp - 0x190]
movzx edx, word [ecx + 0x14]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0x138], eax
mov ecx, dword [0x1008bd3c]
mov eax, dword [0x1008bd38]
mov edx, ecx
add edx, 0x209ce7b0
sub edx, 1
sub edx, 0x209ce7b0
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, 0x47137c64
mov ecx, 0xc90314b1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0x8ad11595
jmp 0x1000b46b
mov eax, dword [ebp - 0x138]
movzx ecx, word [ebp - 0x192]
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 - 0x198], eax
mov dword [ebp - 0x1a0], 0x8999df2b
jmp 0x1000b46b
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
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, 0x979e6f4b
mov ecx, 0xeaeb750f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov ecx, dword [ebp - 0x198]
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10032940
call fcn.10028380
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x131], al
mov ecx, dword [0x1008bd3c]
mov eax, dword [0x1008bd38]
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, 0x979e6f4b
mov ecx, 0x72b11191
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x198]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub edx, eax
lea eax, [ebp - 0x120]
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]
sub esp, 0x10
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x199], al
mov eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x198]
mov ecx, dword [ecx + 0xc]
sub eax, 0xcfef25d1
add eax, ecx
add eax, 0xcfef25d1
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x1a0], 0xcf085865
jmp 0x1000b46b
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
sub edx, 0x134891d3
sub edx, 1
add edx, 0x134891d3
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, 0xda1f8798
mov ecx, 0xd42f3802
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov eax, dword [ebp - 0x198]
mov edx, dword [eax + 0xc]
mov ecx, dword [ebp - 0x12c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x130]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10024b80
mov ecx, dword [ebp - 0x120]
mov eax, dword [ebp - 0x198]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 0xc]
add esi, 0x2f352058
add esi, eax
sub esi, 0x2f352058
lea eax, [ebp - 0x120]
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]
sub esp, 0x10
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x199], al
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
add edx, 0xbaf08a94
sub edx, 1
sub edx, 0xbaf08a94
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, 0xda1f8798
mov ecx, 0x8e7b9bf6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0xd5e7ceb3
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0x4fd91e7f
jmp 0x1000b46b
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
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, 0xb8c05c8b
mov ecx, 0xe366b60e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0xfb4ba0cf
jmp 0x1000b46b
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
add edx, 0xf6bd64bb
sub edx, 1
sub edx, 0xf6bd64bb
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, 0x186440ec
mov ecx, 0x5503c581
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0xa22c3ece
jmp 0x1000b46b
mov ax, word [ebp - 0x128]
sub ax, 0x985d
add ax, 1
add ax, 0x985d
mov word [ebp - 0x126], ax
mov dword [ebp - 0x1a0], 0x1d03f677
jmp 0x1000b46b
mov ecx, dword [0x1008bd3c]
mov eax, dword [0x1008bd38]
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, 0x9e622f4e
mov ecx, 0x61ab7558
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov eax, dword [ebp - 0x180]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov eax, dword [ebp - 0x184]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1a0], 0x3faa1e9a
jmp 0x1000b46b
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x124], eax
mov eax, dword [0x1008bd3c]
mov ecx, dword [0x1008bd38]
mov edx, eax
add edx, 0xc4fd89d9
sub edx, 1
sub edx, 0xc4fd89d9
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, 0xb7c304db
mov ecx, 0xed81c00a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1a0], eax
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0x1c0208b8
jmp 0x1000b46b
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov dword [ebp - 0x1a0], 0x63df1406
jmp 0x1000b46b
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.10023c80
add esp, 0x1b8
pop esi
pop ebx
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x174], eax
lea eax, [ebp - 0x11c]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.10024a20
mov eax, dword [ebp + 8]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
sub esp, 4
mov dword [ebp - 0x1a0], 0xaeaef9a1
jmp 0x1000b46b
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x1a0], 0x2fa2637a
jmp 0x1000b46b
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x1a0], 0x993c1abd
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0x5c6af530
jmp 0x1000b46b
mov ax, word [ebp - 0x146]
mov dword [ebp - 0x1a0], 0xbd33565b
jmp 0x1000b46b
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x1a0], 0xcf4455fb
jmp 0x1000b46b
mov ecx, dword [ebp - 0x198]
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x10032940
call fcn.10028380
mov dword [ebp - 0x1a0], 0xeaeb750f
jmp 0x1000b46b
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x12c]
mov ecx, dword [ebp - 0x12c]
mov ecx, dword [ebp - 0x12c]
mov ecx, dword [ebp - 0x12c]
sub ecx, 0x663ae7a2
add ecx, eax
add ecx, 0x663ae7a2
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x130]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.10024b80
mov ecx, dword [ebp - 0x120]
mov eax, dword [ebp - 0x198]
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 0xc]
sub esi, 0xaa627ba6
add esi, eax
add esi, 0xaa627ba6
lea eax, [ebp - 0x120]
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]
sub esp, 0x10
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x199], al
mov dword [ebp - 0x1a0], 0xd42f3802
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0x9a39f455
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0x5503c581
jmp 0x1000b46b
mov ax, word [ebp - 0x126]
mov word [ebp - 0x192], ax
mov dword [ebp - 0x1a0], 0x61ab7558
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0xbb6cdc1c
jmp 0x1000b46b
mov dword [ebp - 0x1a0], 0x6d5c6437
jmp 0x100098b2