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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0xa0
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa4], eax
mov eax, dword [0x10093c80]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov dword [ebp - 0xa0], 0x68dab17a
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0xa8], eax
sub eax, 0x80c36588
je 0x1000dd04
jmp 0x1000d194
mov eax, dword [ebp - 0xa8]
sub eax, 0x813b97f5
je 0x1000e26a
jmp 0x1000d1aa
mov eax, dword [ebp - 0xa8]
sub eax, 0x8a07a642
je 0x1000e2c3
jmp 0x1000d1c0
mov eax, dword [ebp - 0xa8]
sub eax, 0x8ec8d5a4
je 0x1000db85
jmp 0x1000d1d6
mov eax, dword [ebp - 0xa8]
sub eax, 0x8f75f778
je 0x1000e0fb
jmp 0x1000d1ec
mov eax, dword [ebp - 0xa8]
sub eax, 0x91bfbe4c
je 0x1000dc55
jmp 0x1000d202
mov eax, dword [ebp - 0xa8]
sub eax, 0x92d4bd0e
je 0x1000da3c
jmp 0x1000d218
mov eax, dword [ebp - 0xa8]
sub eax, 0x97275d99
je 0x1000db5b
jmp 0x1000d22e
mov eax, dword [ebp - 0xa8]
sub eax, 0x9e3701a6
je 0x1000d6a1
jmp 0x1000d244
mov eax, dword [ebp - 0xa8]
sub eax, 0xac4b77f1
je 0x1000de16
jmp 0x1000d25a
mov eax, dword [ebp - 0xa8]
sub eax, 0xb0d0a725
je 0x1000d75b
jmp 0x1000d270
mov eax, dword [ebp - 0xa8]
sub eax, 0xb45a7384
je 0x1000e08d
jmp 0x1000d286
mov eax, dword [ebp - 0xa8]
sub eax, 0xb7451c44
je 0x1000e3b3
jmp 0x1000d29c
mov eax, dword [ebp - 0xa8]
sub eax, 0xba75f8d9
je 0x1000d855
jmp 0x1000d2b2
mov eax, dword [ebp - 0xa8]
sub eax, 0xbf48f1ef
je 0x1000db3b
jmp 0x1000d2c8
mov eax, dword [ebp - 0xa8]
sub eax, 0xc37431c9
je 0x1000e383
jmp 0x1000d2de
mov eax, dword [ebp - 0xa8]
sub eax, 0xc5088227
je 0x1000e3e5
jmp 0x1000d2f4
mov eax, dword [ebp - 0xa8]
sub eax, 0xc82e6c02
je 0x1000d9b4
jmp 0x1000d30a
mov eax, dword [ebp - 0xa8]
sub eax, 0xc9697109
je 0x1000e2a5
jmp 0x1000d320
mov eax, dword [ebp - 0xa8]
sub eax, 0xcd34c876
je 0x1000d74c
jmp 0x1000d336
mov eax, dword [ebp - 0xa8]
sub eax, 0xd1e0af2d
je 0x1000e182
jmp 0x1000d34c
mov eax, dword [ebp - 0xa8]
sub eax, 0xd77e3c4d
je 0x1000e191
jmp 0x1000d362
mov eax, dword [ebp - 0xa8]
sub eax, 0xe11ba15f
je 0x1000e481
jmp 0x1000d378
mov eax, dword [ebp - 0xa8]
sub eax, 0xea8df494
je 0x1000e25b
jmp 0x1000d38e
mov eax, dword [ebp - 0xa8]
sub eax, 0xef4331ac
je 0x1000e06b
jmp 0x1000d3a4
mov eax, dword [ebp - 0xa8]
sub eax, 0xf08f4484
je 0x1000dfec
jmp 0x1000d3ba
mov eax, dword [ebp - 0xa8]
sub eax, 0xf1031201
je 0x1000dac8
jmp 0x1000d3d0
mov eax, dword [ebp - 0xa8]
sub eax, 0xfb847d8a
je 0x1000e3a1
jmp 0x1000d3e6
mov eax, dword [ebp - 0xa8]
sub eax, 0x82852d3
je 0x1000dd72
jmp 0x1000d3fc
mov eax, dword [ebp - 0xa8]
sub eax, 0x9e3cd3e
je 0x1000d93c
jmp 0x1000d412
mov eax, dword [ebp - 0xa8]
sub eax, 0xc7ac52d
je 0x1000e314
jmp 0x1000d428
mov eax, dword [ebp - 0xa8]
sub eax, 0x12454a73
je 0x1000e36e
jmp 0x1000d43e
mov eax, dword [ebp - 0xa8]
sub eax, 0x1d292fc7
je 0x1000e4af
jmp 0x1000d454
mov eax, dword [ebp - 0xa8]
sub eax, 0x21a90767
je 0x1000e173
jmp 0x1000d46a
mov eax, dword [ebp - 0xa8]
sub eax, 0x26326031
je 0x1000e05c
jmp 0x1000d480
mov eax, dword [ebp - 0xa8]
sub eax, 0x26a3ab0e
je 0x1000e49a
jmp 0x1000d496
mov eax, dword [ebp - 0xa8]
sub eax, 0x2f507f9a
je 0x1000dc7b
jmp 0x1000d4ac
mov eax, dword [ebp - 0xa8]
sub eax, 0x31627bd9
je 0x1000dffb
jmp 0x1000d4c2
mov eax, dword [ebp - 0xa8]
sub eax, 0x32507123
je 0x1000d8ce
jmp 0x1000d4d8
mov eax, dword [ebp - 0xa8]
sub eax, 0x3d05f00b
je 0x1000dcb6
jmp 0x1000d4ee
mov eax, dword [ebp - 0xa8]
sub eax, 0x3eba97dc
je 0x1000e35d
jmp 0x1000d504
mov eax, dword [ebp - 0xa8]
sub eax, 0x4078cb45
je 0x1000d77e
jmp 0x1000d51a
mov eax, dword [ebp - 0xa8]
sub eax, 0x425830f7
je 0x1000d9ce
jmp 0x1000d530
mov eax, dword [ebp - 0xa8]
sub eax, 0x439e689d
je 0x1000dab9
jmp 0x1000d546
mov eax, dword [ebp - 0xa8]
sub eax, 0x52c3539a
je 0x1000d7bc
jmp 0x1000d55c
mov eax, dword [ebp - 0xa8]
sub eax, 0x54559060
je 0x1000d996
jmp 0x1000d572
mov eax, dword [ebp - 0xa8]
sub eax, 0x56c184a9
je 0x1000dbfb
jmp 0x1000d588
mov eax, dword [ebp - 0xa8]
sub eax, 0x595dd330
je 0x1000dc64
jmp 0x1000d59e
mov eax, dword [ebp - 0xa8]
sub eax, 0x5a333a3c
je 0x1000deec
jmp 0x1000d5b4
mov eax, dword [ebp - 0xa8]
sub eax, 0x5c71524f
je 0x1000d864
jmp 0x1000d5ca
mov eax, dword [ebp - 0xa8]
sub eax, 0x6051ae08
je 0x1000d8b4
jmp 0x1000d5e0
mov eax, dword [ebp - 0xa8]
sub eax, 0x68dab17a
je 0x1000d669
jmp 0x1000d5f6
mov eax, dword [ebp - 0xa8]
sub eax, 0x6eee7b8b
je 0x1000dad7
jmp 0x1000d60c
mov eax, dword [ebp - 0xa8]
sub eax, 0x6f1d8dcd
je 0x1000de34
jmp 0x1000d622
mov eax, dword [ebp - 0xa8]
sub eax, 0x7370a1c8
je 0x1000e1ff
jmp 0x1000d638
mov eax, dword [ebp - 0xa8]
sub eax, 0x7a3201fb
je 0x1000de76
jmp 0x1000d64e
mov eax, dword [ebp - 0xa8]
sub eax, 0x7c3ac164
je 0x1000dc9f
jmp 0x1000d664
jmp 0x1000e4b9
push eax
mov eax, esp
mov dword [ebp - 0x94], eax
push eax
mov eax, esp
mov dword [ebp - 0x90], eax
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x8c], eax
push eax
mov eax, esp
mov dword [ebp - 0x88], eax
mov dword [ebp - 0xa0], 0x9e3701a6
jmp 0x1000e4b9
mov eax, dword [ebp - 0xa4]
push eax
mov ecx, esp
mov dword [ebp - 0x84], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x80], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x7c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x78], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x74], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x70], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x6c], ecx
push eax
mov ecx, esp
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x98], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0x18]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0xc
call fcn.1002d380
add esp, 0xc
mov eax, dword [ebp - 0x98]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov eax, dword [ebp - 0x94]
mov dword [eax], ecx
mov edx, dword [ebp - 0x94]
mov eax, 0xcd34c876
mov ecx, 0xb0d0a725
cmp dword [edx], 0
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0x8a07a642
jmp 0x1000e4b9
mov eax, dword [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0xa0], 0x4078cb45
jmp 0x1000e4b9
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
lea eax, [ebp - 0x18]
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 ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x90]
mov dword [eax], ecx
mov dword [ebp - 0xa0], 0x52c3539a
jmp 0x1000e4b9
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x94]
mov ecx, dword [ecx]
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 eax, dword [ebp - 0x8c]
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 - 0x88]
mov dword [eax], ecx
mov edx, dword [ebp - 0x88]
mov esi, 0xffffffff
mov eax, 0x5c71524f
mov ecx, 0xba75f8d9
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0x8a07a642
jmp 0x1000e4b9
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
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 - 0x5c], eax
mov dword [ebp - 0xa0], 0x6051ae08
jmp 0x1000e4b9
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x5c]
mov dword [eax], ecx
mov dword [ebp - 0xa0], 0x32507123
jmp 0x1000e4b9
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
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, 0x12454a73
mov ecx, 0x9e3cd3e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov eax, dword [ebp - 0x84]
cmp dword [eax], 0
setne al
and al, 1
mov byte [ebp - 0x55], al
mov eax, dword [0x100952e4]
mov ecx, dword [0x100952e0]
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, 0x12454a73
mov ecx, 0x54559060
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov dl, byte [ebp - 0x55]
mov eax, 0xc82e6c02
mov ecx, 0x6eee7b8b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0xa0], 0x425830f7
jmp 0x1000e4b9
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
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, 0xc37431c9
mov ecx, 0x92d4bd0e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov eax, dword [ebp - 0x54]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
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, 0xc37431c9
mov ecx, 0x439e689d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0xf1031201
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0x8a07a642
jmp 0x1000e4b9
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
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 - 0x80]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x7c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0xa0], 0xbf48f1ef
jmp 0x1000e4b9
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
add eax, 0x3c
mov dword [ebp - 0x48], eax
mov dword [ebp - 0xa0], 0x97275d99
jmp 0x1000e4b9
mov eax, dword [ebp - 0x48]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x4c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, dword [ebp - 0x78]
mov dword [eax], ecx
mov eax, dword [ebp - 0x74]
mov word [eax], 0
mov dword [ebp - 0xa0], 0x8ec8d5a4
jmp 0x1000e4b9
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
mov edx, ecx
sub edx, 0x403b2d9d
sub edx, 1
add edx, 0x403b2d9d
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, 0xfb847d8a
mov ecx, 0x56c184a9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov eax, dword [ebp - 0x74]
movzx eax, word [eax]
mov dword [ebp - 0x44], eax
mov eax, dword [0x100952e4]
mov ecx, dword [0x100952e0]
mov edx, eax
sub edx, 0x89611497
sub edx, 1
add edx, 0x89611497
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, 0xfb847d8a
mov ecx, 0x91bfbe4c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0x595dd330
jmp 0x1000e4b9
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0xa0], 0x2f507f9a
jmp 0x1000e4b9
mov eax, dword [ebp - 0x40]
movzx esi, word [eax + 6]
mov edx, dword [ebp - 0x44]
mov eax, 0xd77e3c4d
mov ecx, 0x7c3ac164
cmp edx, esi
cmovl eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov eax, dword [ebp - 0x78]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0xa0], 0x3d05f00b
jmp 0x1000e4b9
mov eax, dword [ebp - 0x3c]
sub eax, 0xefd17d64
add eax, 0x18
add eax, 0xefd17d64
mov ecx, dword [ebp - 0x78]
mov ecx, dword [ecx]
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 ecx, dword [ebp - 0x74]
movzx ecx, word [ecx]
imul ecx, ecx, 0x28
sub eax, 0x85e8a44f
add eax, ecx
add eax, 0x85e8a44f
mov dword [ebp - 0x38], eax
mov dword [ebp - 0xa0], 0x80c36588
jmp 0x1000e4b9
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
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, 0xb7451c44
mov ecx, 0x82852d3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x38]
mov dword [eax], ecx
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1003aee5
call fcn.10030cf0
add esp, 8
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x31], al
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
mov edx, ecx
sub edx, 0xc66b3d80
sub edx, 1
add edx, 0xc66b3d80
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, 0xb7451c44
mov ecx, 0xac4b77f1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov dl, byte [ebp - 0x31]
mov eax, 0x6f1d8dcd
mov ecx, 0x26326031
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov eax, dword [ebp - 0x6c]
mov dword [eax], 0
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x70]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
sub eax, 0xd57fb213
add eax, ecx
add eax, 0xd57fb213
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0xa0], 0x7a3201fb
jmp 0x1000e4b9
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
mov edx, ecx
add edx, 0xa9c565f8
sub edx, 1
sub edx, 0xa9c565f8
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, 0xc5088227
mov ecx, 0x5a333a3c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x30]
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 - 0x68]
mov byte [eax], cl
mov eax, dword [ebp - 0x90]
mov edx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xdde33569
add edx, eax
sub edx, 0xdde33569
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
xor eax, eax
sub eax, esi
sub ecx, eax
mov eax, dword [ebp - 0x70]
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.1002d4e0
add esp, 0xc
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
mov edx, ecx
sub edx, 0x546ba767
sub edx, 1
add edx, 0x546ba767
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, 0xc5088227
mov ecx, 0xf08f4484
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0x31627bd9
jmp 0x1000e4b9
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov edx, dword [eax + 8]
mov eax, dword [ebp - 0x90]
mov esi, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub esi, 0xc3067324
add esi, eax
add esi, 0xc3067324
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x28]
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 - 0x68]
mov byte [eax], cl
mov dword [ebp - 0xa0], 0x26326031
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0xef4331ac
jmp 0x1000e4b9
mov eax, dword [ebp - 0x74]
mov ax, word [eax]
xor ecx, ecx
sub cx, 1
sub ax, cx
mov word [ebp - 0x22], ax
mov dword [ebp - 0xa0], 0xb45a7384
jmp 0x1000e4b9
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
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, 0xe11ba15f
mov ecx, 0x8f75f778
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov eax, dword [ebp - 0x74]
mov cx, word [ebp - 0x22]
mov word [eax], cx
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
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, 0xe11ba15f
mov ecx, 0x21a90767
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0xd1e0af2d
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0x8ec8d5a4
jmp 0x1000e4b9
mov ecx, dword [0x100952e4]
mov eax, dword [0x100952e0]
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, 0x26a3ab0e
mov ecx, 0x7370a1c8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [0x100952e4]
mov ecx, dword [0x100952e0]
mov edx, eax
sub edx, 0x9401fa3b
sub edx, 1
add edx, 0x9401fa3b
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, 0x26a3ab0e
mov ecx, 0xea8df494
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0x813b97f5
jmp 0x1000e4b9
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa0], 0xc9697109
jmp 0x1000e4b9
mov eax, dword [ebp - 0x1c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa0], 0x8a07a642
jmp 0x1000e4b9
mov eax, dword [0x100952e4]
mov ecx, dword [0x100952e0]
mov edx, eax
add edx, 0x3ba5cbcf
sub edx, 1
sub edx, 0x3ba5cbcf
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, 0x1d292fc7
mov ecx, 0xc7ac52d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov eax, dword [0x100952e4]
mov ecx, dword [0x100952e0]
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, 0x1d292fc7
mov ecx, 0x3eba97dc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x1000e4b9
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.1002c570
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xa0], 0x9e3cd3e
jmp 0x1000e4b9
mov eax, dword [ebp - 0x54]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0xa0], 0x92d4bd0e
jmp 0x1000e4b9
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xa0], 0x56c184a9
jmp 0x1000e4b9
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x38]
mov dword [eax], ecx
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x1003aee5
call fcn.10030cf0
add esp, 8
mov dword [ebp - 0xa0], 0x82852d3
jmp 0x1000e4b9
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x30]
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 - 0x68]
mov byte [eax], cl
mov eax, dword [ebp - 0x90]
mov edx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
add edx, 0xe3a9879c
add edx, eax
sub edx, 0xe3a9879c
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x70]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
sub ecx, 0xe5c854df
add ecx, eax
add ecx, 0xe5c854df
mov eax, dword [ebp - 0x70]
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.1002d4e0
add esp, 0xc
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0xa0], 0x5a333a3c
jmp 0x1000e4b9
mov eax, dword [ebp - 0x74]
mov cx, word [ebp - 0x22]
mov word [eax], cx
mov dword [ebp - 0xa0], 0x8f75f778
jmp 0x1000e4b9
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0xa0], 0x7370a1c8
jmp 0x1000e4b9
mov dword [ebp - 0xa0], 0xc7ac52d
jmp 0x1000d178