Function at 0x10036c11
Capabilities:
Accept command line arguments
Check for time delay via gettickcount
Check os version
Connect pipe
Create process on windows
Delete file
Enumerate gui resources
Extract resource via kernel32 functions
Get common file path
Get disk information
Get file attributes
Get geographical location
Get system information on windows
Get thread local storage value
Identify system language via api
Parse pe header
Query environment variable
Resume thread

Disassembly:
mov eax, 0x1008eec4
call fcn.1008d1ac
mov eax, 0x1944
call fcn.10089270
push ebx
push esi
xor eax, eax
mov dword [ebp - 0x80], ecx
push edi
inc eax
mov byte [ebp - 0x65], dl
push eax
lea ecx, [ebp - 0xdc]
call fcn.1001ae23
xor eax, eax
or edi, 0xffffffff
mov dword [ebp - 4], eax
xor ecx, ecx
mov dword [ebp - 0x40], 0xf844ba92
inc ecx
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x10036c7e
push dword [ebp - 0x18]
lea ecx, [ebp - 0xdc]
call fcn.1001aec1
mov dword [eax], 0xae8c9f36
xor eax, eax
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jl 0x10036c5a
xor ecx, ecx
xor eax, eax
inc ecx
push 3
mov dword [ebp - 0x18], eax
pop edx
cmp dword [ebp - 0x18], edx
jge 0x10036c9d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x171c], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10036c89
xor eax, eax
push eax
lea ecx, [ebp - 0xdc]
call fcn.1001aec1
xor ebx, ebx
lea ecx, [ebp - 0xdc]
cmp dword [eax], ebx
sete bl
xor eax, eax
push eax
call fcn.1001aec1
lea ecx, [ebp - 0xdc]
sub ebx, dword [eax]
xor eax, eax
push eax
mov dword [ebp - 0x34], ebx
call fcn.1001aec1
mov ecx, dword [ebp - 0x34]
xor ebx, ebx
cmp ecx, dword [eax]
lea ecx, [ebp - 0xdc]
setne bl
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp dword [eax], ebx
setl cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xdc]
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x34]
xor ebx, ebx
cmp ecx, dword [eax]
lea ecx, [ebp - 0xdc]
setge bl
xor eax, eax
push eax
call fcn.1001aec1
lea ecx, [ebp - 0xdc]
sub ebx, dword [eax]
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp ebx, dword [eax]
setne cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xdc]
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x34]
xor ebx, ebx
cmp ecx, dword [eax]
lea ecx, [ebp - 0xdc]
setne bl
xor eax, eax
push eax
call fcn.1001aec1
cmp ebx, dword [eax]
jle 0x10036d76
xor eax, eax
lea ecx, [ebp - 0xdc]
push eax
call fcn.1001aec1
cmp dword [eax], 0
jne 0x10036d76
xor eax, eax
mov esi, eax
jmp 0x10036d7b
xor eax, eax
lea esi, [eax + 1]
push eax
lea ecx, [ebp - 0xdc]
call fcn.1001aec1
xor ecx, ecx
cmp dword [eax], esi
setl cl
xor ebx, ebx
cmp ecx, edi
lea ecx, [ebp - 0xdc]
setg bl
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp ebx, dword [eax]
setl cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xdc]
push eax
call fcn.1001aec1
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0xdc]
sub esi, dword [eax]
xor eax, eax
push eax
call fcn.1001aec1
xor ebx, ebx
lea ecx, [ebp - 0xdc]
cmp esi, dword [eax]
setne bl
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp ebx, dword [eax]
setg cl
xor eax, eax
cmp ecx, 0x2d29
lea ecx, [ebp - 0xdc]
setne al
imul eax, eax, 0x7d41
mov dword [ebp - 0x40], eax
xor eax, eax
push eax
call fcn.1001aec1
mov esi, dword [ebp - 0x40]
lea ecx, [ebp - 0xdc]
add esi, dword [eax]
xor eax, eax
push eax
call fcn.1001aec1
xor ebx, ebx
lea ecx, [ebp - 0xdc]
cmp dword [eax], esi
setne bl
xor eax, eax
mov dword [ebp - 0x1718], ebx
push eax
call fcn.1001aec1
lea ecx, [ebp - 0xdc]
sub ebx, dword [eax]
xor eax, eax
push eax
call fcn.1001aec1
or esi, 0xffffffff
lea ecx, [ebp - 0xdc]
mov eax, dword [eax]
add eax, ebx
mov dword [ebp - 0x34], eax
mov dword [ebp - 4], esi
call fcn.1001aea5
mov edi, 0x90c4d8e5
lea ecx, [ebp - 0xdd0]
push 4
mov dword [ebp - 0x2c], edi
call fcn.1001ae23
xor ecx, ecx
inc ecx
mov dword [ebp - 4], ecx
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x10036ea2
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1d8], 0xdf75
xor eax, eax
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jl 0x10036e87
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10036eca
push dword [ebp - 0x18]
lea ecx, [ebp - 0xdd0]
call fcn.1001aec1
mov dword [eax], 0xa912e755
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10036eab
xor eax, eax
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov dword [ebp - 0x2c], eax
push 2
pop ecx
cmp dword [ebp - 0x2c], eax
jl 0x10036ffa
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], 0x889a278c
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], eax
jg 0x10036ff1
mov dword [ebp - 0x5c], 0x478144ad
mov dword [ebp - 0x34], 0xfffffff9
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], eax
jl 0x10036fd0
push ecx
mov dword [ebp - 0x3c], 0xdcc590f0
lea ecx, [ebp - 0xba8]
mov dword [ebp - 0x44], 0xad7d711e
call fcn.1001ae23
push 2
pop ecx
xor eax, eax
mov byte [ebp - 4], cl
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ecx
jge 0x10036f59
push dword [ebp - 0x20]
lea ecx, [ebp - 0xba8]
call fcn.1001aec1
mov dword [eax], 0xcacff8ee
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x10036f3c
dec dword [ebp - 0x40]
lea ecx, [ebp - 0xba8]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
mov esi, dword [ebp + eax*4 - 0x1d8]
xor eax, eax
push eax
call fcn.1001aec1
xor edx, edx
mov dword [eax], esi
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x1d8]
mov eax, dword [ebp - 0x24]
sub ecx, esi
mov eax, dword [ebp + eax*4 - 0x1d8]
cmp ecx, eax
lea ecx, [ebp - 0xdd0]
setne dl
xor eax, eax
sub edx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x50]
push eax
add esi, edx
call fcn.1001aec1
lea ecx, [ebp - 0xba8]
mov dword [eax], esi
xor eax, eax
inc eax
mov dword [ebp - 0x44], esi
mov byte [ebp - 4], al
call fcn.1001aea5
dec dword [ebp - 0x5c]
push 2
pop ecx
jns 0x10036f12
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10036fdf
push eax
push eax
call ebx
xor eax, eax
inc dword [ebp - 0x24]
push 2
pop ecx
cmp dword [ebp - 0x24], eax
jle 0x10036ef8
or esi, 0xffffffff
dec dword [ebp - 0x2c]
jns 0x10036edf
lea ecx, [ebp - 0xdd0]
mov dword [ebp - 4], esi
call fcn.1001aea5
mov dword [ebp - 0x2c], edi
lea ecx, [ebp - 0xf38]
push 4
call fcn.1001ae23
push 3
pop eax
mov dword [ebp - 4], eax
xor edi, edi
xor eax, eax
inc edi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x10037049
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1e0], 0xdf75
xor eax, eax
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jl 0x1003702b
xor edi, edi
xor eax, eax
inc edi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10037071
push dword [ebp - 0x18]
lea ecx, [ebp - 0xf38]
call fcn.1001aec1
mov dword [eax], 0xa912e755
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10037052
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], eax
jl 0x10037189
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], 0x889a278c
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], eax
jg 0x10037180
mov dword [ebp - 0x5c], 0x478144ad
mov dword [ebp - 0x34], 0xfffffff9
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], eax
jl 0x10037162
push 2
pop esi
mov dword [ebp - 0x3c], 0xdcc590f0
lea ecx, [ebp - 0xbc0]
mov dword [ebp - 0x44], 0xad7d711e
push esi
call fcn.1001ae23
xor eax, eax
mov byte [ebp - 4], 4
mov dword [ebp - 0x20], eax
jmp 0x100370e9
push dword [ebp - 0x20]
call fcn.1001aec1
mov dword [eax], 0xcacff8ee
inc dword [ebp - 0x20]
lea ecx, [ebp - 0xbc0]
cmp dword [ebp - 0x20], esi
jl 0x100370d8
dec dword [ebp - 0x40]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
mov esi, dword [ebp + eax*4 - 0x1e0]
xor eax, eax
push eax
call fcn.1001aec1
xor edx, edx
mov dword [eax], esi
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x1e0]
mov eax, dword [ebp - 0x24]
sub ecx, esi
mov eax, dword [ebp + eax*4 - 0x1e0]
cmp ecx, eax
lea ecx, [ebp - 0xf38]
setne dl
xor eax, eax
sub edx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x50]
push eax
add esi, edx
call fcn.1001aec1
push 3
lea ecx, [ebp - 0xbc0]
mov dword [eax], esi
pop eax
mov dword [ebp - 0x44], esi
mov byte [ebp - 4], al
call fcn.1001aea5
dec dword [ebp - 0x5c]
jns 0x100370b0
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10037171
push eax
push eax
call ebx
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jle 0x10037096
or esi, 0xffffffff
dec dword [ebp - 0x2c]
jns 0x1003707d
lea ecx, [ebp - 0xf38]
mov dword [ebp - 4], esi
call fcn.1001aea5
mov dword [ebp - 0x2c], 0x90c4d8e5
lea ecx, [ebp - 0xde8]
push 4
call fcn.1001ae23
xor eax, eax
mov dword [ebp - 4], 5
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x100371d7
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1e8], 0xdf75
xor eax, eax
inc dword [ebp - 0x18]
inc eax
cmp dword [ebp - 0x18], eax
jl 0x100371bc
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x100371ff
push dword [ebp - 0x18]
lea ecx, [ebp - 0xde8]
call fcn.1001aec1
mov dword [eax], 0xa912e755
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x100371e0
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], eax
jl 0x10037317
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], 0x889a278c
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], eax
jg 0x1003730e
mov dword [ebp - 0x5c], 0x478144ad
mov dword [ebp - 0x34], 0xfffffff9
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], eax
jl 0x100372f0
push 2
pop esi
mov dword [ebp - 0x3c], 0xdcc590f0
lea ecx, [ebp - 0xbd8]
mov dword [ebp - 0x44], 0xad7d711e
push esi
call fcn.1001ae23
push 6
pop eax
mov byte [ebp - 4], al
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x10037279
push dword [ebp - 0x20]
call fcn.1001aec1
mov dword [eax], 0xcacff8ee
inc dword [ebp - 0x20]
lea ecx, [ebp - 0xbd8]
cmp dword [ebp - 0x20], esi
jl 0x10037268
dec dword [ebp - 0x40]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
mov esi, dword [ebp + eax*4 - 0x1e8]
xor eax, eax
push eax
call fcn.1001aec1
xor edx, edx
mov dword [eax], esi
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x1e8]
mov eax, dword [ebp - 0x24]
sub ecx, esi
mov eax, dword [ebp + eax*4 - 0x1e8]
cmp ecx, eax
lea ecx, [ebp - 0xde8]
setne dl
xor eax, eax
sub edx, dword [ebp - 0x50]
mov esi, dword [ebp - 0x50]
push eax
add esi, edx
call fcn.1001aec1
lea ecx, [ebp - 0xbd8]
mov dword [eax], esi
mov dword [ebp - 0x44], esi
mov byte [ebp - 4], 5
call fcn.1001aea5
dec dword [ebp - 0x5c]
jns 0x1003723e
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100372ff
push eax
push eax
call ebx
xor eax, eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jle 0x10037224
or esi, 0xffffffff
dec dword [ebp - 0x2c]
jns 0x1003720b
lea ecx, [ebp - 0xde8]
mov dword [ebp - 4], esi
call fcn.1001aea5
xor eax, eax
mov dword [ebp - 0x28], 0xcea5d6c0
xor ebx, ebx
mov dword [ebp - 0x28], eax
inc ebx
cmp dword [ebp - 0x28], 5
jle 0x1003736d
mov dword [ebp - 0x34], 0xdd03248c
mov dword [ebp - 0x20], eax
jmp 0x10037357
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x7b8], 0xfffffff6
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x10037346
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x7b8], eax
inc dword [ebp - 0x28]
push 0
pop eax
jmp 0x10037334
push 7
mov dword [ebp - 0x28], 0xffffffe6
pop edi
jmp 0x10037419
push 3
pop eax
mov dword [ebp - 0x2c], 0xef307d7
lea ecx, [ebp - 0xbf0]
push eax
call fcn.1001ae23
xor eax, eax
mov dword [ebp - 4], edi
push 3
mov dword [ebp - 0x20], eax
pop edx
cmp dword [ebp - 0x20], edx
jge 0x100373c5
push edx
pop ebx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xbf0]
call fcn.1001aec1
mov dword [eax], 0x44a75432
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x100373a4
xor ebx, ebx
xor eax, eax
inc ebx
cmp dword [ebp - 0x2c], eax
je 0x100373db
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10037408
call dword [sym.imp.KERNEL32.dll_GetTickCount]
jmp 0x10037408
push 2
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], eax
pop esi
jmp 0x100373fb
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100373f8
push eax
call dword [sym.imp.KERNEL32.dll_InitializeSListHead]
xor eax, eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jle 0x100373e6
or esi, 0xffffffff
cmp dword [ebp - 0x34], eax
jne 0x10037425
lea ecx, [ebp - 0xbf0]
mov dword [ebp - 4], esi
call fcn.1001aea5
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xb
jne 0x1003737c
jmp 0x10037433
lea ecx, [ebp - 0xbf0]
mov dword [ebp - 4], esi
call fcn.1001aea5
push 3
pop eax
push eax
lea ecx, [ebp - 0x4a0]
call fcn.1001ae23
push 8
pop ecx
mov dword [ebp - 4], ecx
xor eax, eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x50], 0x6b37990
push 3
mov dword [ebp - 0x18], eax
pop edx
cmp dword [ebp - 0x18], edx
jge 0x10037482
push dword [ebp - 0x18]
lea ecx, [ebp - 0x4a0]
call fcn.1001aec1
push 3
pop edx
mov dword [eax], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10037462
push 8
xor eax, eax
pop ecx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jge 0x1003749e
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x36c], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x1003748a
xor eax, eax
push 2
pop ecx
mov dword [ebp - 0x36c], ecx
mov dword [ebp - 0x5c], 0xf58aae07
cmp dword [ebp - 0x36c], eax
jl 0x10037692
jmp 0x100374be
xor eax, eax
mov dword [ebp - 0x14], 0xd7af2c9a
mov dword [ebp - 0x34], 0x6339
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jge 0x100374f1
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x6e4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x100374dd
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10037513
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x17d0], 0xb2097e65
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x100374fa
xor eax, eax
mov dword [ebp - 0x6dc], ecx
cmp dword [ebp - 0x6dc], eax
jl 0x100375fb
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x40], 0x611bc383
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x2c], eax
jl 0x100375ef
push 2
pop ebx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], eax
jl 0x10037562
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x1003755d
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor eax, eax
dec dword [ebp - 0x14]
jns 0x1003754c
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x4a0]
call fcn.1001aec1
xor ecx, ecx
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
neg eax
cmp eax, 0xdfd
setle cl
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x4a0]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
push dword [ebp - 0x6dc]
call fcn.1001aec1
lea ecx, [ebp - 0x4a0]
cmp dword [eax], 0xfffe
sbb eax, eax
inc eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x2c]
push dword [ebp - 0x36c]
call fcn.1001aec1
mov ecx, dword [ebp - 0x36c]
push 0
imul ecx, dword [eax]
cmp dword [ebp - 0x5c], ecx
sbb eax, eax
neg eax
mov dword [ebp - 0x50], eax
dec dword [ebp - 0x2c]
pop eax
jns 0x10037541
xor ebx, ebx
push 2
inc ebx
pop ecx
dec dword [ebp - 0x6dc]
jns 0x10037525
push dword [ebp - 0x36c]
lea ecx, [ebp - 0x4a0]
call fcn.1001aec1
cmp dword [eax], 0
je 0x10037678
xor eax, eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x34]
imul eax, dword [ebp - 0x14]
test eax, eax
je 0x1003762c
xor eax, eax
cmp dword [ebp - 0x44], eax
je 0x1003762e
mov edx, ebx
jmp 0x10037630
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x50]
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x6e4], ecx
mov edx, dword [ebp - 0x36c]
mov eax, dword [ebp - 0x58]
imul edx, ecx
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x4a0]
push dword [ebp - 0x36c]
call fcn.1001aec1
mov ecx, dword [ebp - 0x40]
add ecx, dword [eax]
cmp ecx, 0xf4d0
jle 0x10037678
mov eax, ebx
jmp 0x1003767a
xor eax, eax
push 2
pop ecx
mov dword [ebp - 0x17cc], eax
dec dword [ebp - 0x36c]
push 3
pop edx
jns 0x100374bc
lea ecx, [ebp - 0x4a0]
mov dword [ebp - 4], esi
call fcn.1001aea5
push 2
pop edi
push edi
lea ecx, [ebp - 0x1384]
call fcn.1001ae23
mov dword [ebp - 4], 9
xor eax, eax
mov dword [ebp - 0x20], 0x9bdba76a
mov dword [ebp - 0x3c], 0xadae8c9f
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x100376ec
push dword [ebp - 0x20]
lea ecx, [ebp - 0x1384]
call fcn.1001aec1
mov dword [eax], 7
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x100376ce
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x100376fe
mov dword [ebp - 0x40], 0x7f2fb5a5
dec dword [ebp - 0x40]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x100376f1
lea ecx, [ebp - 0x1384]
mov dword [ebp - 4], esi
call fcn.1001aea5
xor eax, eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jge 0x10037736
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1f0], 0xb0647dc4
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x1003771e
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10037747
call dword [sym.imp.KERNEL32.dll_GetVersion]
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x19
jge 0x10037967
push 3
pop ecx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x30], 0xfffffff7
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jg 0x1003785b
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov esi, dword [ebp + eax*4 - 0x1f0]
mov eax, dword [ebp - 0x1c]
imul esi, dword [ebp + eax*4 - 0x1f0]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
dec edx
cmp edx, eax
setg cl
xor eax, eax
add esi, ecx
sub esi, dword [ebp - 0x28]
mov dword [ebp - 0x30], esi
or esi, 0xffffffff
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], eax
jg 0x1003784a
mov dword [ebp - 0x14], 0x3c67ee39
lea ecx, [ebp - 0xf5c]
push edi
call fcn.1001ae23
xor eax, eax
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x100377ea
push dword [ebp - 0x20]
lea ecx, [ebp - 0xf5c]
call fcn.1001aec1
mov dword [eax], esi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x100377d0
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], eax
jl 0x1003782e
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0xf5c]
push ebx
call fcn.1001aec1
xor ecx, ecx
push 0
mov dword [eax], 0x5fff839e
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x1f0]
test eax, eax
setne cl
xor eax, eax
cmp ecx, 0xbb9
sete al
mov dword [ebp - 0x34], eax
dec dword [ebp - 0x14]
pop eax
jns 0x100377f2
lea ecx, [ebp - 0xf5c]
mov dword [ebp - 4], esi
call fcn.1001aea5
inc dword [ebp - 0x30]
xor eax, eax
cmp dword [ebp - 0x30], eax
jle 0x100377ac
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jle 0x10037770
push 3
xor eax, eax
pop ecx
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ecx
jl 0x1003795a
mov dword [ebp - 0x34], 0x68927649
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 9
jg 0x1003794b
push ecx
mov dword [ebp - 0x14], 9
lea ecx, [ebp - 0xc08]
mov dword [ebp - 0x20], ebx
call fcn.1001ae23
xor eax, eax
mov dword [ebp - 4], 0xb
mov dword [ebp - 0x20], eax
push 3
pop eax
cmp dword [ebp - 0x20], eax
jge 0x100378c6
push eax
pop ebx
push dword [ebp - 0x20]
lea ecx, [ebp - 0xc08]
call fcn.1001aec1
mov dword [eax], 0xdc4b54c5
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x100378a7
xor ebx, ebx
inc ebx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x100378eb
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0xc08]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x1c]
xor eax, eax
push eax
call fcn.1001aec1
mov esi, dword [ebp - 0x44]
xor edx, edx
mov ecx, dword [ebp - 0x28]
imul esi, edi
cmp esi, ecx
setne dl
mov dword [eax], edx
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], al
je 0x10037928
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
or esi, 0xffffffff
lea ecx, [ebp - 0xc08]
mov dword [ebp - 4], esi
call fcn.1001aea5
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 9
push 3
pop ecx
jle 0x1003787b
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jge 0x10037867
push 2
pop edi
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x19
jl 0x10037757
mov dword [ebp - 0x14], 0x90c4d8e5
lea ecx, [ebp - 0xc4]
push ebx
call fcn.1001ae23
mov dword [ebp - 4], 0xc
xor eax, eax
mov dword [ebp - 0x40], 0xf844ba92
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x100379b3
push dword [ebp - 0x18]
lea ecx, [ebp - 0xc4]
call fcn.1001aec1
mov dword [eax], 0xae8c9f36
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10037995
xor eax, eax
push 3
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x100379d2
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x162c], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x100379be
xor eax, eax
push eax
lea ecx, [ebp - 0xc4]
call fcn.1001aec1
xor ebx, ebx
lea ecx, [ebp - 0xc4]
cmp dword [eax], ebx
sete bl
xor eax, eax
push eax
call fcn.1001aec1
lea ecx, [ebp - 0xc4]
sub ebx, dword [eax]
xor eax, eax
push eax
mov dword [ebp - 0x34], ebx
call fcn.1001aec1
mov ecx, dword [ebp - 0x34]
xor ebx, ebx
cmp ecx, dword [eax]
lea ecx, [ebp - 0xc4]
setne bl
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp dword [eax], ebx
setl cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xc4]
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x34]
xor ebx, ebx
cmp ecx, dword [eax]
lea ecx, [ebp - 0xc4]
setge bl
xor eax, eax
push eax
call fcn.1001aec1
lea ecx, [ebp - 0xc4]
sub ebx, dword [eax]
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp ebx, dword [eax]
setne cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xc4]
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x34]
xor ebx, ebx
cmp ecx, dword [eax]
lea ecx, [ebp - 0xc4]
setne bl
xor eax, eax
push eax
call fcn.1001aec1
cmp ebx, dword [eax]
jle 0x10037aab
xor eax, eax
lea ecx, [ebp - 0xc4]
push eax
call fcn.1001aec1
cmp dword [eax], 0
jne 0x10037aab
xor eax, eax
mov esi, eax
jmp 0x10037ab0
xor eax, eax
lea esi, [eax + 1]
push eax
lea ecx, [ebp - 0xc4]
call fcn.1001aec1
xor ecx, ecx
cmp dword [eax], esi
setl cl
xor ebx, ebx
or edi, 0xffffffff
cmp ecx, edi
lea ecx, [ebp - 0xc4]
setg bl
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp ebx, dword [eax]
setl cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xc4]
push eax
call fcn.1001aec1
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0xc4]
sub esi, dword [eax]
xor eax, eax
push eax
call fcn.1001aec1
xor ebx, ebx
lea ecx, [ebp - 0xc4]
cmp esi, dword [eax]
setne bl
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp ebx, dword [eax]
setg cl
xor eax, eax
cmp ecx, 0x2d29
lea ecx, [ebp - 0xc4]
setne al
imul eax, eax, 0x7d41
mov dword [ebp - 0x40], eax
xor eax, eax
push eax
call fcn.1001aec1
mov esi, dword [ebp - 0x40]
lea ecx, [ebp - 0xc4]
add esi, dword [eax]
xor eax, eax
push eax
call fcn.1001aec1
xor ebx, ebx
lea ecx, [ebp - 0xc4]
cmp dword [eax], esi
setne bl
xor eax, eax
mov dword [ebp - 0x1628], ebx
push eax
call fcn.1001aec1
lea ecx, [ebp - 0xc4]
sub ebx, dword [eax]
xor eax, eax
push eax
call fcn.1001aec1
lea ecx, [ebp - 0xc4]
mov eax, dword [eax]
add eax, ebx
mov dword [ebp - 0x34], eax
mov dword [ebp - 4], edi
call fcn.1001aea5
push 4
lea ecx, [ebp - 0xc68]
call fcn.1001ae23
mov dword [ebp - 4], 0xd
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x48], 0xfffffffd
mov dword [ebp - 0x40], edi
push 6
pop ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x50], 0x9cbadbef
push 2
mov dword [ebp - 0x20], eax
pop ecx
cmp dword [ebp - 0x20], ecx
jge 0x10037bea
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x588], 0xfffffff6
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x10037bd2
xor eax, eax
dec dword [ebp - 0x48]
cmp dword [ebp - 0x2c], eax
jne 0x10037c32
mov ecx, dword [ebp - 0x48]
xor edx, edx
mov eax, dword [ebp - 0x584]
cmp eax, ecx
mov eax, dword [ebp - 0x584]
setle dl
xor ecx, ecx
sub edx, eax
mov eax, dword [ebp - 0x588]
cmp edx, eax
setg cl
xor eax, eax
cmp ecx, 0x38f738f5
setge al
cmp eax, 0x950cfdfe
jne 0x10037c2c
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x40]
xor ecx, ecx
cmp eax, 0x15b01d9
setge cl
xor eax, eax
cmp ecx, edi
setg al
mov dword [ebp - 0x584], eax
test eax, eax
jne 0x10037c5a
cmp dword [ebp - 0x2c], eax
je 0x10037c5c
lea edx, [eax + 1]
jmp 0x10037c5e
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
mov eax, 0xfff6
push 8
setl cl
sub eax, ecx
add eax, dword [ebp - 0x2c]
neg eax
sbb eax, eax
xor edx, edx
inc eax
imul eax, dword [ebp - 0x40]
imul ecx, eax, 0x5e6a4
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setge dl
xor ebx, ebx
cmp eax, edx
mov eax, dword [ebp - 0x2c]
pop edx
setle bl
xor ecx, ecx
cmp ebx, eax
push 3
setne cl
xor eax, eax
cmp ecx, edx
pop ecx
setne al
xor ebx, ebx
mov dword [ebp - 0x50], eax
inc ebx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x50], eax
xor eax, eax
mov dword [ebp - 0x14], 0xb546158d
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], 0xe843631e
mov dword [ebp - 0x3c], 0xacc4b7c7
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x3c], 0xfffffff6
mov dword [ebp - 0x3c], 4
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x10037d03
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x16bc], 0xad6f
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10037ceb
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10037d19
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x18fc], 0x364d64ea
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10037d08
mov eax, dword [ebp - 0x16b4]
mov dword [ebp - 0x14], eax
xor eax, eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x14], eax
jge 0x10037d4f
xor eax, eax
cmp dword [ebp - 0x14], eax
jne 0x10037d4f
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], al
je 0x10037daf
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultUILanguage]
jmp 0x10037dad
push ecx
mov dword [ebp - 0x3c], 0xf3de0369
lea ecx, [ebp - 0x10c0]
mov dword [ebp - 0x3c], 2
call fcn.1001ae23
mov byte [ebp - 4], 0xe
xor eax, eax
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x20], eax
push 3
pop eax
cmp dword [ebp - 0x20], eax
jge 0x10037d9b
push eax
pop ebx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x10c0]
call fcn.1001aec1
and dword [eax], 0
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x10037d7f
xor ebx, ebx
inc ebx
dec dword [ebp - 0x40]
lea ecx, [ebp - 0x10c0]
mov byte [ebp - 4], 0xd
call fcn.1001aea5
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10037dc5
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1f8], 0xdf75
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10037db4
mov dword [ebp - 0x30], 0xfffffff7
lea ecx, [ebp - 0x434]
push 4
call fcn.1001ae23
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x1310]
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x24], 0xfffffffc
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x48], 0xcafaca8a
push ebx
call fcn.1001ae23
mov byte [ebp - 4], 0x10
xor eax, eax
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x3c], 0x79f8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 4
jge 0x10037e3b
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x434]
call fcn.1001aec1
mov dword [eax], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10037e20
xor eax, eax
push 2
mov dword [ebp - 0x1c], eax
pop ecx
cmp dword [ebp - 0x1c], ecx
jge 0x10037e5d
push 3
pop edx
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x150], edx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x10037e49
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x10037e83
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x1310]
call fcn.1001aec1
mov dword [eax], 0x1c31e92
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10037e65
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xffffffe6
jl 0x10037f06
push 3
pop ebx
mov dword [ebp - 0x38], 0x5ba77230
mov dword [ebp - 0x38], eax
jmp 0x10037eb1
push dword [ebp - 0x38]
lea ecx, [ebp - 0x434]
call fcn.1001aec1
cmp dword [eax], 0
jne 0x10037eb6
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ebx
jle 0x10037e9b
mov eax, dword [ebp - 0x38]
lea ecx, [ebp - 0x434]
push ebx
call fcn.1001aec1
mov eax, dword [ebp - 0x38]
xor edx, edx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
cmp eax, 0xd6b9
mov eax, dword [ebp - 0x38]
setne dl
xor ecx, ecx
cmp eax, edx
push 0
setl cl
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x24], eax
dec dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xffffffe6
pop eax
jge 0x10037e8f
xor ebx, ebx
inc ebx
cmp dword [ebp - 0x30], eax
je 0x10037f94
push 2
pop esi
push esi
lea ecx, [ebp - 0x434]
call fcn.1001aec1
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
xor eax, eax
cmp dword [ebp - 0x2c], eax
je 0x10037f2d
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x2c]
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setne dl
xor ecx, ecx
cmp eax, edx
setne cl
cmp dword [ebp - 0x24], ecx
jl 0x10037f55
push esi
lea ecx, [ebp - 0x434]
call fcn.1001aec1
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14c]
dec eax
je 0x10037f6f
xor eax, eax
cmp dword [ebp - 0x150], eax
je 0x10037f71
mov ecx, ebx
jmp 0x10037f73
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x150]
sub ecx, eax
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x30], eax
je 0x10037f89
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x40]
xor eax, eax
push eax
lea ecx, [ebp - 0x434]
call fcn.1001aec1
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x150]
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x20], 0x51f1
xor eax, eax
mov dword [ebp - 0x34], 0x4fd08915
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], al
je 0x10037fd4
push eax
push eax
call dword [sym.imp.GDI32.dll_RectInRegion]
xor eax, eax
cmp dword [ebp - 0x40], eax
jne 0x10037ffa
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x434]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x48]
xor eax, eax
push eax
call fcn.1001aec1
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x10037ffc
mov eax, ebx
mov ecx, 0x81f6
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sub ecx, eax
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x48], ecx
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x2c]
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x20]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x1310]
call fcn.1001aea5
lea ecx, [ebp - 0x434]
mov byte [ebp - 4], 0xd
call fcn.1001aea5
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10038071
push dword [ebp - 0x18]
lea ecx, [ebp - 0xc68]
call fcn.1001aec1
mov dword [eax], 0xa912e755
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10038052
xor eax, eax
push 2
pop ecx
mov dword [ebp - 0x24], ecx
push ecx
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x4ac]
call fcn.1001ae23
push 3
pop eax
push eax
lea ecx, [ebp - 0xc20]
mov byte [ebp - 4], 0x12
call fcn.1001ae23
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x6fc]
mov dword [ebp - 0x14], 0x4939e63a
push 4
call fcn.1001ae23
push 3
pop eax
push eax
lea ecx, [ebp - 0xe00]
mov byte [ebp - 4], 0x14
call fcn.1001ae23
mov byte [ebp - 4], 0x15
xor eax, eax
mov dword [ebp - 0x40], 0xed832cb8
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x40], 0x2a6dfe16
mov dword [ebp - 0x34], 0x24e8160a
mov dword [ebp - 0x3c], 0xfffffff9
push 2
mov dword [ebp - 0x1c], eax
pop esi
cmp dword [ebp - 0x1c], esi
jge 0x10038112
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x4ac]
call fcn.1001aec1
mov dword [eax], 0xf4727cad
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x100380f4
xor eax, eax
push 3
mov dword [ebp - 0x1c], eax
pop edx
cmp dword [ebp - 0x1c], edx
jge 0x10038140
push edx
pop ebx
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xc20]
call fcn.1001aec1
mov dword [eax], 0xdcdf
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1003811f
xor ebx, ebx
xor eax, eax
inc ebx
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 4
jge 0x10038168
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x6fc]
call fcn.1001aec1
mov dword [eax], 0xfffffffd
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10038149
xor eax, eax
mov dword [ebp - 0x1c], eax
push 3
pop eax
cmp dword [ebp - 0x1c], eax
jge 0x10038194
push eax
pop ebx
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xe00]
call fcn.1001aec1
mov dword [eax], 0xa9c4ad15
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10038175
xor ebx, ebx
inc ebx
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0x6fc]
mov eax, dword [ebp - 0x14]
push 3
mov dword [ebp - 0x40], eax
pop eax
push eax
call fcn.1001aec1
mov edx, dword [ebp - 0x40]
mov edi, eax
mov ecx, dword [ebp - 0x24]
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x4ac]
push ebx
setg al
cmp eax, 0xed66e5dc
sbb esi, esi
inc esi
imul esi, dword [edi]
call fcn.1001aec1
xor ecx, ecx
cmp esi, dword [eax]
setle cl
xor ebx, ebx
cmp ecx, 4
lea ecx, [ebp - 0x4ac]
setne bl
xor eax, eax
inc eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp ebx, dword [eax]
setl cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x4ac]
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x34]
push 3
mov dword [eax], ecx
mov dword [ebp - 0x14], ecx
lea ecx, [ebp - 0x6fc]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
pop eax
push eax
call fcn.1001aec1
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0xc20]
xor eax, eax
push eax
call fcn.1001aec1
mov esi, eax
lea ecx, [ebp - 0x4ac]
xor eax, eax
inc eax
push eax
call fcn.1001aec1
xor ebx, ebx
lea ecx, [ebp - 0xe00]
cmp dword [eax], 0xfffffffa
setne bl
xor eax, eax
add ebx, dword [esi]
inc eax
push eax
neg ebx
call fcn.1001aec1
mov dword [eax], ebx
mov eax, dword [ebp - 0x24]
inc dword [esi]
cmp ebx, eax
jne 0x10038272
xor eax, eax
inc eax
jmp 0x10038274
xor eax, eax
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x6fc]
xor eax, eax
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x24]
sub edx, ecx
lea ecx, [ebp - 0x6fc]
neg edx
push 3
sbb edx, edx
xor ebx, ebx
inc edx
cmp edx, dword [eax]
pop eax
push eax
setl bl
call fcn.1001aec1
mov ecx, dword [ebp - 0x24]
xor edx, edx
cmp ebx, ecx
setge dl
xor ecx, ecx
cmp edx, dword [eax]
setle cl
xor ebx, ebx
mov dword [ebp - 0x40], ecx
inc ebx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x24]
jle 0x100382e2
push ebx
lea ecx, [ebp - 0x4ac]
call fcn.1001aec1
cmp dword [eax], 0
je 0x100382e2
mov eax, ebx
jmp 0x100382e4
xor eax, eax
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0xe00]
call fcn.1001aea5
lea ecx, [ebp - 0x6fc]
call fcn.1001aea5
lea ecx, [ebp - 0xc20]
call fcn.1001aea5
lea ecx, [ebp - 0x4ac]
mov byte [ebp - 4], 0xd
call fcn.1001aea5
mov edi, dword [sym.imp.USER32.dll_GetDC]
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], eax
jl 0x10039312
push 3
pop ebx
push ebx
lea ecx, [ebp - 0xefc]
call fcn.1001ae23
mov byte [ebp - 4], 0x16
xor eax, eax
mov dword [ebp - 0x20], 0xfffffffa
or esi, 0xffffffff
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x1003836f
push dword [ebp - 0x18]
lea ecx, [ebp - 0xefc]
call fcn.1001aec1
mov dword [eax], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10038355
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x1003838f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x804], 0x236432a2
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10038377
xor eax, eax
push 2
mov dword [ebp - 0x7fc], eax
pop ebx
jmp 0x100383b3
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100383ad
push eax
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
xor eax, eax
inc dword [ebp - 0x7fc]
cmp dword [ebp - 0x7fc], ebx
jle 0x1003839a
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], eax
jl 0x100383db
push dword [ebp - 0x20]
lea ecx, [ebp - 0xefc]
call fcn.1001aec1
cmp dword [eax], 0
jne 0x100383db
dec dword [ebp - 0x20]
jns 0x100383c3
lea ecx, [ebp - 0xefc]
mov byte [ebp - 4], 0xd
call fcn.1001aea5
movdqa xmm0, xmmword [0x10007e70]
lea eax, [ebp - 0x1424]
push eax
lea eax, [ebp - 0x1434]
mov dword [ebp - 0x1c], esi
push eax
lea ecx, [ebp - 0x17b8]
movdqu xmmword [ebp - 0x1434], xmm0
call fcn.1001aed0
lea ecx, [ebp - 0x21b]
mov esi, eax
call fcn.10008d63
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x240]
push dword [esi]
call fcn.1001ae7f
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x9a0]
mov dword [ebp - 0x48], 0xa8f9
push 4
call fcn.1001ae23
mov byte [ebp - 4], 0x18
or eax, 0xffffffff
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x3c], 0x1f059960
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x3c], 0xfffffff8
mov dword [ebp - 0x3c], 0x3176a179
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x1003849c
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9a0]
call fcn.1001aec1
push 3
pop ecx
mov dword [eax], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x1003847c
xor eax, eax
jmp 0x1003849f
push 3
pop ecx
mov dword [ebp - 0x18], eax
jmp 0x100384b5
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x7cc], 0xdb503b5b
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100384a4
push ecx
lea ecx, [ebp - 0x240]
call fcn.1001aec1
push 3
lea ecx, [ebp - 0x240]
mov esi, dword [eax]
pop eax
push eax
sub esi, 0x3a264b17
call fcn.1001aec1
push 3
xor ebx, ebx
lea ecx, [ebp - 0x240]
cmp dword [eax], esi
pop eax
push eax
setg bl
call fcn.1001aec1
xor ecx, ecx
cmp ebx, dword [eax]
setl cl
cmp ecx, 4
lea ecx, [ebp - 0x240]
sbb esi, esi
xor eax, eax
push eax
neg esi
call fcn.1001aec1
mov eax, dword [eax]
imul eax, esi
neg eax
jne 0x10038535
push 3
pop eax
push eax
lea ecx, [ebp - 0x240]
call fcn.1001aec1
cmp dword [eax], 0
jne 0x10038535
xor eax, eax
xor ebx, ebx
mov esi, eax
inc ebx
jmp 0x1003853a
xor ebx, ebx
inc ebx
mov esi, ebx
push 3
pop eax
push eax
lea ecx, [ebp - 0x240]
call fcn.1001aec1
xor ecx, ecx
cmp dword [eax], esi
setne cl
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], 0x19
cmp dword [ebp - 0x48], 0xffffffea
jl 0x10038701
or eax, 0xffffffff
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x44], 0x4b2b3a3c
mov dword [ebp - 0x20], eax
jmp 0x1003858c
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x444], 0xe74bb9c
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x1003857b
push 3
pop eax
push eax
lea ecx, [ebp - 0x240]
call fcn.1001aec1
mov ecx, dword [ebp - 0x38]
xor ebx, ebx
push 3
cmp dword [eax], ecx
lea ecx, [ebp - 0x240]
pop eax
push eax
setg bl
call fcn.1001aec1
xor ecx, ecx
push 3
cmp ebx, dword [eax]
pop ebx
setg cl
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x240]
push ebx
call fcn.1001aec1
push 2
lea ecx, [ebp - 0x240]
mov edi, dword [eax]
add edi, dword [ebp - 0x34]
neg edi
sbb edi, edi
inc edi
call fcn.1001aec1
push ebx
lea ecx, [ebp - 0x9a0]
mov esi, dword [eax]
add esi, edi
call fcn.1001aec1
mov ecx, dword [ebp - 0x38]
imul ecx, esi
add ecx, dword [ebp - 0x38]
imul ecx, dword [eax]
cmp ecx, 0xfffffffb
jb 0x1003860d
mov eax, dword [ebp - 0x38]
xor ebx, ebx
lea ecx, [ebp - 0x9a0]
inc ebx
push ebx
call fcn.1001aec1
cmp dword [eax], 0
jne 0x1003862a
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x2c], eax
je 0x1003862c
mov edx, ebx
mov eax, dword [ebp - 0x7c8]
sub edx, eax
mov eax, dword [ebp - 0x7cc]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
sete cl
mov dword [ebp - 0x444], ecx
test ecx, ecx
jne 0x1003865b
xor eax, eax
cmp dword [ebp - 0x7c8], eax
je 0x1003865d
mov eax, ebx
xor edx, edx
cmp eax, ebx
mov eax, dword [ebp - 0x38]
setg dl
xor ecx, ecx
cmp eax, edx
setl cl
xor eax, eax
neg ecx
je 0x1003868a
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], al
je 0x100386e9
push 0x181e
push eax
call dword [sym.imp.KERNEL32.dll_EnumSystemLocalesW]
jmp 0x100386e7
mov dword [ebp - 0x3c], 0x3b3bbbb5
push 3
mov dword [ebp - 0x3c], 0xfffffff9
pop ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x100386c0
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x18dc], 0x1a7160c6
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x100386a7
xor eax, eax
mov dword [ebp - 0x38], ecx
cmp dword [ebp - 0x38], eax
jl 0x100386e4
mov dword [ebp - 0x2c], eax
jmp 0x100386da
mov dword [ebp - 0x444], 0x8361cd5c
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jle 0x100386cd
dec dword [ebp - 0x38]
jns 0x100386c8
inc dword [ebp - 0x40]
xor eax, eax
cmp dword [ebp - 0x44], eax
jne 0x100386fb
dec dword [ebp - 0x48]
cmp dword [ebp - 0x48], 0xffffffea
jge 0x10038564
mov edi, dword [sym.imp.USER32.dll_GetDC]
lea ecx, [ebp - 0x9a0]
call fcn.1001aea5
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 0xd
call fcn.1001aea5
xor eax, eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x3c], eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], al
je 0x10038735
push eax
push eax
call dword [sym.imp.KERNEL32.dll_SizeofResource]
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x1003875b
push eax
push 0x882
push 0x228d
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_SetViewportOrgEx]
xor eax, eax
mov dword [ebp - 0x50], 0x889a278c
mov dword [ebp - 0x1c], eax
jmp 0x10039300
push 2
pop esi
push esi
lea ecx, [ebp - 0x8b0]
call fcn.1001ae23
push 3
pop eax
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xc38]
mov dword [ebp - 0x28], 0xa66fe7d8
push eax
call fcn.1001ae23
mov byte [ebp - 4], 0x1a
xor eax, eax
mov dword [ebp - 0x40], 0xfffffff6
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x100387c6
push dword [ebp - 0x18]
lea ecx, [ebp - 0x8b0]
call fcn.1001aec1
mov dword [eax], 0xfffffff6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x100387a8
xor eax, eax
push 3
mov dword [ebp - 0x18], eax
pop edx
cmp dword [ebp - 0x18], edx
jge 0x100387f4
push edx
pop ebx
push dword [ebp - 0x18]
lea ecx, [ebp - 0xc38]
call fcn.1001aec1
mov dword [eax], 0x9c2d
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100387d3
xor ebx, ebx
xor eax, eax
inc ebx
mov dword [ebp - 0x28], eax
jmp 0x10038878
or ecx, 0xffffffff
mov dword [ebp - 0x40], ecx
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10038815
push eax
push 0x1f5c
push eax
call dword [sym.imp.GDI32.dll_GetObjectW]
push dword [ebp - 0x28]
lea ecx, [ebp - 0x8b0]
call fcn.1001aec1
push dword [ebp - 0x28]
lea ecx, [ebp - 0x8b0]
call fcn.1001aec1
lea ecx, [ebp - 0x8b0]
mov dword [eax], ebx
mov eax, dword [ebp - 0x28]
push dword [ebp - 0x28]
call fcn.1001aec1
mov ecx, dword [ebp - 0x40]
xor ebx, ebx
push esi
cmp dword [eax], ecx
lea ecx, [ebp - 0xc38]
setle bl
call fcn.1001aec1
xor ecx, ecx
push 0
cmp ebx, dword [eax]
mov eax, dword [ebp - 0x28]
setne cl
xor ebx, ebx
add eax, ecx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
inc dword [ebp - 0x28]
inc ebx
pop eax
cmp dword [ebp - 0x28], ebx
jle 0x100387f9
lea ecx, [ebp - 0xc38]
call fcn.1001aea5
lea ecx, [ebp - 0x8b0]
mov byte [ebp - 4], 0xd
call fcn.1001aea5
mov dword [ebp - 0x48], 0x478144ad
xor eax, eax
mov dword [ebp - 0x2c], 0x7632667a
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x100388cd
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x974], 0
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x100388b4
xor eax, eax
push 3
mov dword [ebp - 0x2c], eax
pop ecx
jmp 0x1003893c
mov dword [ebp - 0x30], 0x96a485bf
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ecx
jg 0x10038932
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0x974], 0
je 0x100388f4
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x974]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x974]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x974]
mov eax, dword [ebp - 0x968]
xor eax, eax
mov dword [ebp - 0x974], eax
cmp dword [ebp - 0x30], eax
jne 0x10038930
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jle 0x100388e4
xor eax, eax
mov dword [ebp - 0x30], 0xb9737e0d
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ecx
jle 0x100388d5
mov dword [ebp - 0x58], 0xfffffff9
mov dword [ebp - 0x20], eax
push 2
mov dword [ebp - 0x3c], 0xfffffff6
mov dword [ebp - 0x20], eax
pop ecx
jmp 0x1003896b
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x580], 0xfffffff7
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x1003895a
or esi, 0xffffffff
mov dword [ebp - 0x580], ebx
mov dword [ebp - 0x20], esi
jmp 0x1003899a
mov ecx, dword [ebp - 0x57c]
xor edx, edx
mov eax, dword [ebp - 0x580]
cmp ecx, eax
setg dl
mov dword [ebp - 0x580], edx
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffee
jl 0x1003897e
xor eax, eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], eax
jl 0x1003904e
jmp 0x100389b2
xor eax, eax
mov dword [ebp - 0x3c], 0xdcc590f0
mov dword [ebp - 0x3c], 0xfffffffd
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100389d8
push eax
push 0x1f5c
push eax
call dword [sym.imp.GDI32.dll_GetObjectW]
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100389ed
push 0x147d
push eax
call dword [sym.imp.USER32.dll_CharUpperBuffW]
mov dword [ebp - 0x34], 0xad7d711e
lea ecx, [ebp - 0xc50]
push 2
call fcn.1001ae23
mov byte [ebp - 4], 0x1b
xor eax, eax
push 4
mov dword [ebp - 0x40], 0xa66e58d0
pop edx
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10038a34
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x94], 0xfffffff9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10038a1c
xor eax, eax
push 2
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x10038a57
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1158], 0xd6b9c2d6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10038a3f
xor eax, eax
cmp dword [ebp - 0x94], eax
jne 0x10038acc
mov eax, dword [ebp - 0x94]
xor ecx, ecx
mov eax, dword [ebp - 0x94]
cmp eax, 0xd018
setl cl
xor eax, eax
cmp ecx, 0x3f02
setge al
cmp dword [ebp - 0x94], eax
jge 0x10038a96
xor eax, eax
cmp dword [ebp - 0x94], eax
je 0x10038a98
mov eax, ebx
jmp 0x10038a98
xor eax, eax
mov dword [ebp - 0x1158], eax
xor ecx, ecx
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
cmp eax, 0xa0f0f5eb
setne cl
cmp ebx, ecx
sbb eax, eax
neg eax
cmp ebx, eax
sbb eax, eax
neg eax
cmp eax, dword [ebp - 0x94]
jge 0x10038acc
xor eax, eax
jmp 0x10038ace
mov eax, ebx
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x3b4]
push edx
call fcn.1001ae23
mov byte [ebp - 4], 0x1c
xor eax, eax
mov dword [ebp - 0x24], 0xba76aabe
mov dword [ebp - 0x2c], 0x9ea4d59f
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x10038b1c
push dword [ebp - 0x20]
lea ecx, [ebp - 0x3b4]
call fcn.1001aec1
mov dword [eax], 0xfffffffb
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10038afd
xor eax, eax
push 3
pop esi
mov dword [ebp - 0x24], esi
cmp dword [ebp - 0x24], eax
jl 0x10038c44
mov dword [ebp - 0x38], 0xb5a5efa2
lea ecx, [ebp - 0x3b4]
push dword [ebp - 0x24]
call fcn.1001aec1
mov dword [ebp - 0x38], 0x3690f1d8
xor eax, eax
cmp dword [ebp - 0x38], eax
je 0x10038bd6
mov dword [ebp - 0x34], 0xfffffffa
mov dword [ebp - 0x38], esi
cmp dword [ebp - 0x38], eax
jl 0x10038c28
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x3b4]
mov dword [ebp - 0x40], 0xfffffff8
mov dword [ebp - 0x44], 0x828451d7
push dword [ebp - 0x38]
call fcn.1001aec1
lea ecx, [ebp - 0x3b4]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
push dword [ebp - 0x38]
call fcn.1001aec1
mov ecx, dword [ebp - 0x34]
dec ecx
neg ecx
sbb ecx, ecx
neg ecx
cmp ecx, ebx
sbb ecx, ecx
neg ecx
add ecx, dword [eax]
neg ecx
mov dword [ebp - 0x40], ecx
lea ecx, [ebp - 0x3b4]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x40]
push dword [ebp - 0x38]
call fcn.1001aec1
mov dword [ebp - 0x44], 0xfec46bc2
dec dword [ebp - 0x38]
push 0
pop eax
jns 0x10038b65
jmp 0x10038c28
mov dword [ebp - 0x40], 0xe1cc0e42
mov dword [ebp - 0x2c], eax
push 3
pop eax
cmp dword [ebp - 0x2c], eax
jg 0x10038c22
push eax
pop ebx
mov dword [ebp - 0x34], 0x13053bf8
lea ecx, [ebp - 0x3b4]
push dword [ebp - 0x24]
call fcn.1001aec1
push dword [ebp - 0x24]
lea ecx, [ebp - 0x3b4]
mov esi, eax
call fcn.1001aec1
mov ecx, dword [esi]
imul ecx, dword [eax]
mov dword [ebp - 0x34], ecx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jle 0x10038bea
xor ebx, ebx
inc ebx
dec dword [ebp - 0x40]
push 3
pop esi
push dword [ebp - 0x24]
lea ecx, [ebp - 0x3b4]
call fcn.1001aec1
cmp dword [eax], 0
jne 0x10038c44
dec dword [ebp - 0x24]
jns 0x10038b2b
lea ecx, [ebp - 0x3b4]
mov byte [ebp - 4], 0x1b
call fcn.1001aea5
xor eax, eax
push 2
mov dword [ebp - 0x20], eax
pop esi
jmp 0x10038c74
push dword [ebp - 0x20]
lea ecx, [ebp - 0xc50]
call fcn.1001aec1
mov dword [eax], 0xcacff8ee
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x10038c5d
mov dword [ebp - 0x30], 0xc93b4e1a
lea ecx, [ebp - 0x81c]
mov dword [ebp - 0x40], 0xda862840
push ebx
call fcn.1001ae23
xor eax, eax
mov byte [ebp - 4], 0x1d
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jge 0x10038cc2
push dword [ebp - 0x20]
lea ecx, [ebp - 0x81c]
call fcn.1001aec1
mov dword [eax], 0x6bde64f
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x10038ca4
xor eax, eax
push 8
mov dword [ebp - 0x30], eax
pop ecx
cmp dword [ebp - 0x30], ecx
jle 0x10038e3a
mov dword [ebp - 0x24], 0x759609c3
mov dword [ebp - 0x3c], ecx
lea ecx, [ebp - 0xa48]
push ebx
call fcn.1001ae23
mov byte [ebp - 4], 0x1e
or edx, 0xffffffff
mov dword [ebp - 0x3c], edx
xor eax, eax
mov dword [ebp - 0x20], 9
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10038d1c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x17e8], 0x7633
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10038d03
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10038d45
push dword [ebp - 0x18]
lea ecx, [ebp - 0xa48]
call fcn.1001aec1
mov dword [eax], 0x86255d58
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10038d24
xor eax, eax
or edx, 0xffffffff
push 3
mov dword [ebp - 0x24], eax
pop ecx
jmp 0x10038d67
mov dword [ebp - 0x34], 0x79e672ca
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x24]
cmp dword [ebp + eax*4 - 0x17e8], 0
jne 0x10038d6c
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ecx
jle 0x10038d4d
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x81c]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x40], eax
xor eax, eax
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x40]
mov dword [eax], ecx
lea ecx, [ebp - 0x81c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
inc dword [ebp - 0x20]
xor eax, eax
push eax
call fcn.1001aec1
xor esi, esi
lea ecx, [ebp - 0xa48]
xor ebx, ebx
inc esi
cmp dword [eax], esi
setg bl
xor eax, eax
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x30]
xor edx, edx
cmp ebx, ecx
setne dl
xor ecx, ecx
add edx, 0x4a04
cmp edx, 0xb0ff846c
setne cl
xor edx, edx
cmp ecx, 0xecce
lea ecx, [ebp - 0xa48]
setge dl
xor ebx, ebx
cmp edx, dword [eax]
setge bl
xor eax, eax
push eax
call fcn.1001aec1
xor edx, edx
cmp ebx, dword [eax]
mov eax, dword [ebp - 0x30]
sete dl
xor ecx, ecx
add edx, 0x162c
cmp edx, eax
setge cl
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0xa48]
mov byte [ebp - 4], 0x1d
call fcn.1001aea5
inc dword [ebp - 0x30]
push 8
pop ecx
push esi
pop ebx
cmp dword [ebp - 0x30], ecx
jg 0x10038cd1
xor ebx, ebx
xor eax, eax
inc ebx
cmp dword [ebp - 0x30], eax
je 0x10038e56
push eax
lea ecx, [ebp - 0x81c]
call fcn.1001aec1
cmp dword [eax], 0
je 0x10038e54
mov edx, ebx
jmp 0x10038e58
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0x81c]
mov byte [ebp - 4], 0x1b
call fcn.1001aea5
dec dword [ebp - 0x50]
mov eax, 0x61928c17
mov dword [ebp - 0x3f4], eax
mov dword [ebp - 0x3f0], eax
mov dword [ebp - 0x3ec], eax
mov dword [ebp - 0x3e8], eax
xor eax, eax
mov dword [ebp - 0x30], 0x3aa9ac70
mov dword [ebp - 0x40], 0x927213ec
mov dword [ebp - 0x2c], 0xfffffff9
push 3
mov dword [ebp - 0x30], eax
pop ebx
cmp dword [ebp - 0x30], ebx
jg 0x10038fba
push 4
lea ecx, [ebp - 0xe18]
call fcn.1001ae23
xor eax, eax
mov byte [ebp - 4], 0x1f
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10038ef5
push dword [ebp - 0x18]
lea ecx, [ebp - 0xe18]
call fcn.1001aec1
mov dword [eax], 0x65786371
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10038ed6
xor eax, eax
push 2
mov dword [ebp - 0x18], eax
pop ecx
jmp 0x10038f0e
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x10a4], 0x9e3d3b0c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10038efd
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x3f4]
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0x3f4], 0
je 0x10038f40
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x3f4]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3e8]
mov eax, dword [ebp - 0x30]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x3f4]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax*4 - 0x3f4]
add ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x3f4]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0xe18]
setl dl
xor ebx, ebx
mov eax, dword [ebp + eax*4 - 0x3f4]
cmp edx, eax
mov eax, dword [ebp - 0x30]
setne bl
mov dword [ebp + eax*4 - 0x3f4], ebx
xor eax, eax
inc eax
push eax
call fcn.1001aec1
lea ecx, [ebp - 0xe18]
mov dword [eax], ebx
mov dword [ebp - 0x10a4], ebx
mov byte [ebp - 4], 0x1b
call fcn.1001aea5
inc dword [ebp - 0x30]
push 3
pop ebx
cmp dword [ebp - 0x30], ebx
jle 0x10038eba
xor eax, eax
mov dword [ebp - 0x2c], eax
jmp 0x10038fd6
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x10038fd3
push eax
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegConnectRegistryW]
xor eax, eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], ebx
jle 0x10038fbf
mov eax, dword [ebp - 0x58]
lea ecx, [ebp - 0xc50]
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp + eax*4 - 0x1f8]
xor eax, eax
push eax
call fcn.1001aec1
xor edx, edx
mov dword [eax], esi
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp + eax*4 - 0x1f8]
mov eax, dword [ebp - 0x1c]
sub ecx, esi
mov eax, dword [ebp + eax*4 - 0x1f8]
cmp ecx, eax
lea ecx, [ebp - 0xc68]
setne dl
xor eax, eax
sub edx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x54]
push eax
add esi, edx
call fcn.1001aec1
lea ecx, [ebp - 0xc50]
mov dword [eax], esi
mov dword [ebp - 0x34], esi
mov byte [ebp - 4], 0xd
call fcn.1001aea5
dec dword [ebp - 0x48]
push 1
pop ebx
jns 0x100389b0
or esi, 0xffffffff
mov dword [ebp - 0x48], ebx
lea ecx, [ebp - 0x1c4]
mov dword [ebp - 0x2c], 0xdaab72b2
push ebx
call fcn.1001ae23
mov byte [ebp - 4], 0x20
xor eax, eax
mov dword [ebp - 0x34], 0x38f738f5
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jge 0x10039099
push dword [ebp - 0x20]
lea ecx, [ebp - 0x1c4]
call fcn.1001aec1
mov dword [eax], ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x1003907f
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100390b7
push 0x1488
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetClassNameW]
xor eax, eax
cmp dword [ebp - 0x48], eax
je 0x10039169
push eax
lea ecx, [ebp - 0x1c4]
call fcn.1001aec1
dec dword [eax]
jne 0x10039141
mov eax, dword [ebp - 0x48]
lea ecx, [ebp - 0x1c4]
xor eax, eax
push eax
call fcn.1001aec1
xor eax, eax
lea ecx, [ebp - 0x1c4]
push eax
call fcn.1001aec1
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x1c4]
mov eax, dword [ebp - 0x2c]
xor eax, eax
push eax
call fcn.1001aec1
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x1c4]
mov eax, dword [ebp - 0x34]
xor eax, eax
push eax
call fcn.1001aec1
xor eax, eax
lea ecx, [ebp - 0x1c4]
push eax
call fcn.1001aec1
xor eax, eax
lea ecx, [ebp - 0x1c4]
push eax
call fcn.1001aec1
xor eax, eax
lea ecx, [ebp - 0x1c4]
push eax
call fcn.1001aec1
mov eax, dword [ebp - 0x48]
lea ecx, [ebp - 0x1c4]
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp dword [eax], ecx
setne cl
xor eax, eax
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x2c], eax
je 0x10039167
mov ecx, ebx
jmp 0x1003916b
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x48]
sub eax, ecx
je 0x10039189
xor eax, eax
lea ecx, [ebp - 0x1c4]
push eax
call fcn.1001aec1
cmp dword [eax], 0
je 0x10039189
mov eax, ebx
jmp 0x1003918b
xor eax, eax
mov edx, dword [ebp - 0x48]
xor ecx, ecx
sub edx, eax
mov eax, dword [ebp - 0x24]
cmp edx, eax
setge cl
mov dword [ebp - 0x24], ecx
lea ecx, [ebp - 0x1c4]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x44], eax
mov byte [ebp - 4], 0xd
call fcn.1001aea5
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x34], 0x3bed162c
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x18], 0x1d
jmp 0x10039273
mov dword [ebp - 0x40], 0xfffffffc
mov dword [ebp - 0x40], 0xace4b0ad
mov dword [ebp - 0x2c], 0xac842f88
push 3
mov dword [ebp - 0x20], eax
pop ecx
cmp dword [ebp - 0x20], ecx
jge 0x100391ff
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xf44], esi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x100391eb
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x1003921b
push 0x781
push 0xde8
push eax
call dword [sym.imp.USER32.dll_CheckMenuItem]
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x10039266
cmp dword [ebp - 0xf3c], eax
je 0x1003923d
cmp dword [ebp - 0x18], eax
je 0x1003922f
mov eax, ebx
mov dword [ebp - 0xf3c], eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
xor eax, eax
mov dword [ebp - 0x40], eax
xor edx, edx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setl dl
sub eax, edx
je 0x10039264
mov ecx, ebx
jmp 0x10039268
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
sub ecx, eax
mov dword [ebp - 0x34], ecx
dec dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x18], 0xfffffff7
jle 0x100391cb
mov byte [ebp - 0xd], al
mov dword [ebp - 0x3c], 0xe971
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], al
je 0x100392ae
push eax
push 0x1852
push 0xdea
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_SetViewportExtEx]
xor eax, eax
mov byte [ebp - 0x49], al
cmp byte [ebp - 0x49], 0
je 0x100392c0
push eax
call dword [sym.imp.KERNEL32.dll_RtlCaptureContext]
xor eax, eax
cmp byte [ebp - 0xd], 0
je 0x100392fb
mov dword [ebp - 0x3c], 5
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x100392df
push eax
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameW]
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x100392f3
push eax
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_SysFreeString]
xor eax, eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
inc dword [ebp - 0x1c]
xor eax, eax
cmp dword [ebp - 0x1c], eax
jle 0x1003876a
dec dword [ebp - 0x14]
jns 0x1003832b
or eax, 0xffffffff
lea ecx, [ebp - 0xc68]
mov dword [ebp - 4], eax
call fcn.1001aea5
mov esi, 0xcea5d6c0
xor eax, eax
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x28], eax
jmp 0x10039363
mov dword [ebp - 0x34], 0xdd03248c
mov dword [ebp - 0x14], eax
jmp 0x1003934f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x760], 0xfffffff6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003933e
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x760], eax
inc dword [ebp - 0x28]
push 0
pop eax
cmp dword [ebp - 0x28], 5
jg 0x10039332
mov dword [ebp - 0x28], 0xffffffe6
jmp 0x10039414
push 3
pop eax
mov dword [ebp - 0x2c], 0xef307d7
lea ecx, [ebp - 0xe30]
push eax
call fcn.1001ae23
xor eax, eax
mov dword [ebp - 4], 0x21
push 3
mov dword [ebp - 0x14], eax
pop edx
cmp dword [ebp - 0x14], edx
jge 0x100393c2
push edx
pop ebx
push dword [ebp - 0x14]
lea ecx, [ebp - 0xe30]
call fcn.1001aec1
mov dword [eax], 0x44a75432
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x100393a1
xor ebx, ebx
xor eax, eax
inc ebx
cmp dword [ebp - 0x2c], eax
je 0x100393d8
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x10039400
call dword [sym.imp.KERNEL32.dll_GetTickCount]
jmp 0x10039400
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], eax
jmp 0x100393f5
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x100393f2
push eax
call dword [sym.imp.KERNEL32.dll_InitializeSListHead]
xor eax, eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 2
jle 0x100393e0
cmp dword [ebp - 0x34], eax
jne 0x10039420
or eax, 0xffffffff
lea ecx, [ebp - 0xe30]
mov dword [ebp - 4], eax
call fcn.1001aea5
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xb
jne 0x10039375
jmp 0x10039431
or eax, 0xffffffff
lea ecx, [ebp - 0xe30]
mov dword [ebp - 4], eax
call fcn.1001aea5
push 6
pop eax
mov dword [ebp - 0x30], eax
lea ecx, [ebp - 0xc80]
mov dword [ebp - 0x24], 0x90e69cd1
push ebx
call fcn.1001ae23
push 3
xor eax, eax
mov dword [ebp - 4], 0x22
pop ecx
mov dword [ebp - 0x18], eax
push 0xfffffffffffffffe
pop edx
cmp dword [ebp - 0x18], ecx
jge 0x10039475
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2bc], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10039461
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x1003949b
push dword [ebp - 0x18]
lea ecx, [ebp - 0xc80]
call fcn.1001aec1
mov dword [eax], 0x8fb5c4ce
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x1003947d
xor eax, eax
push 2
pop edx
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], eax
jl 0x100395e3
mov dword [ebp - 0x28], 0x76ff55e0
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], eax
jl 0x100395aa
mov dword [ebp - 0x14], 0x51c8
mov dword [ebp - 0x20], 0xa0e1c2a9
cmp dword [ebp - 0x2b4], eax
je 0x100394e6
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0x2bc], 0
je 0x100394e4
mov ecx, ebx
jmp 0x100394e8
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x30]
cmp ecx, dword [ebp + eax*4 - 0x2bc]
jge 0x100394f7
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
xor edx, edx
push 0xfffffffffffffffe
mov eax, dword [ebp + eax*4 - 0x2bc]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x2bc]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax*4 - 0x2bc]
mov eax, dword [ebp - 0x2b8]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
mov dword [ebp + eax*4 - 0x2bc], edx
xor eax, eax
cmp edx, 0xfffffff9
setg al
xor edx, edx
cmp eax, 0xb060
mov eax, dword [ebp - 0x14]
setl dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
pop eax
setne dl
sub edx, dword [ebp - 0x30]
cmp eax, edx
mov eax, dword [ebp - 0x30]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setne dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
test ecx, ecx
lea ecx, [ebp - 0xc80]
sete al
mov dword [ebp - 0x20], eax
xor eax, eax
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x20]
push 0
mov dword [eax], ecx
mov eax, dword [ebp - 0x20]
dec dword [ebp - 0x28]
pop eax
jns 0x100394bd
push 2
pop edx
mov dword [ebp - 0x28], eax
jmp 0x100395d5
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], eax
jl 0x100395d2
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x2b8]
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x2bc], ecx
dec dword [ebp - 0x24]
jns 0x100395b7
xor eax, eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edx
jle 0x100395af
dec dword [ebp - 0x30]
jns 0x100394aa
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x10039602
push eax
push 0x26a5
push 0x1046
push 0x18e9
call dword [sym.imp.KERNEL32.dll_RaiseException]
or eax, 0xffffffff
lea ecx, [ebp - 0xc80]
mov dword [ebp - 4], eax
call fcn.1001aea5
xor eax, eax
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x28], eax
jmp 0x1003964e
mov dword [ebp - 0x34], 0xdd03248c
mov dword [ebp - 0x14], eax
jmp 0x1003963a
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x864], 0xfffffff6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10039629
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x864], eax
inc dword [ebp - 0x28]
push 0
pop eax
cmp dword [ebp - 0x28], 5
jg 0x1003961d
mov dword [ebp - 0x28], 0xffffffe6
or esi, 0xffffffff
jmp 0x10039704
push 3
pop eax
mov dword [ebp - 0x2c], 0xef307d7
lea ecx, [ebp - 0xf14]
push eax
call fcn.1001ae23
xor eax, eax
mov dword [ebp - 4], 0x23
push 3
mov dword [ebp - 0x14], eax
pop edx
cmp dword [ebp - 0x14], edx
jge 0x100396b0
push edx
pop ebx
push dword [ebp - 0x14]
lea ecx, [ebp - 0xf14]
call fcn.1001aec1
mov dword [eax], 0x44a75432
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003968f
xor ebx, ebx
xor eax, eax
inc ebx
cmp dword [ebp - 0x2c], eax
je 0x100396c6
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x100396f3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
jmp 0x100396f3
push 2
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], eax
pop esi
jmp 0x100396e6
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x100396e3
push eax
call dword [sym.imp.KERNEL32.dll_InitializeSListHead]
xor eax, eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jle 0x100396d1
or esi, 0xffffffff
cmp dword [ebp - 0x34], eax
jne 0x10039710
lea ecx, [ebp - 0xf14]
mov dword [ebp - 4], esi
call fcn.1001aea5
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xb
jne 0x10039663
jmp 0x1003971e
lea ecx, [ebp - 0xf14]
mov dword [ebp - 4], esi
call fcn.1001aea5
push 3
pop ecx
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x34], ecx
push 8
pop ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x44], 0x3cbf
mov dword [ebp - 0x50], 0x9fdb81fd
mov dword [ebp - 0x34], 0xfffffffd
mov dword [ebp - 0x1c], eax
jmp 0x10039758
mov dword [ebp - 0x34], 0xe871
cmp dword [ebp - 0x34], eax
jne 0x1003975e
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xffffffe4
je 0x10039749
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xfffffff9
jle 0x10039812
jmp 0x1003976f
xor eax, eax
mov dword [ebp - 0x14], 0xb6fe6d39
mov dword [ebp - 0x40], 0x1300ca3c
cmp dword [ebp - 0x1c], eax
je 0x1003978e
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14]
xor edx, edx
mov eax, dword [ebp - 0x1c]
sub ecx, 0xc4ce
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setge dl
sub eax, edx
jne 0x100397ab
mov eax, dword [ebp - 0x14]
xor eax, eax
cmp dword [ebp - 0x14], ebx
jg 0x100397b9
mov edx, ebx
cmp dword [ebp - 0x40], eax
jne 0x100397bb
mov edx, eax
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
sete cl
sub ecx, 0x4356
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
sub ecx, eax
jne 0x100397e4
xor eax, eax
cmp dword [ebp - 0x50], eax
je 0x100397e6
mov eax, ebx
cmp eax, 0xbe86de1f
sbb eax, eax
xor edx, edx
inc eax
cmp eax, 0x17c264f8
mov eax, dword [ebp - 0x50]
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x34], ecx
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xfffffff9
jg 0x1003976d
push 6
pop eax
mov dword [ebp - 0x30], eax
lea ecx, [ebp - 0xc98]
mov dword [ebp - 0x24], 0x90e69cd1
push ebx
call fcn.1001ae23
xor eax, eax
mov dword [ebp - 4], 0x24
push 3
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x10039856
push 0xfffffffffffffffe
pop edx
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2d4], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10039842
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x1003987c
push dword [ebp - 0x18]
lea ecx, [ebp - 0xc98]
call fcn.1001aec1
mov dword [eax], 0x8fb5c4ce
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x1003985e
xor eax, eax
push 2
pop edx
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], eax
jl 0x100399c4
mov dword [ebp - 0x28], 0x76ff55e0
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], eax
jl 0x1003998b
mov dword [ebp - 0x14], 0x51c8
mov dword [ebp - 0x20], 0xa0e1c2a9
cmp dword [ebp - 0x2cc], eax
je 0x100398c7
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0x2d4], 0
je 0x100398c5
mov ecx, ebx
jmp 0x100398c9
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x30]
cmp ecx, dword [ebp + eax*4 - 0x2d4]
jge 0x100398d8
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
xor edx, edx
push 0xfffffffffffffffe
mov eax, dword [ebp + eax*4 - 0x2d4]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x2d4]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax*4 - 0x2d4]
mov eax, dword [ebp - 0x2d0]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
mov dword [ebp + eax*4 - 0x2d4], edx
xor eax, eax
cmp edx, 0xfffffff9
setg al
xor edx, edx
cmp eax, 0xb060
mov eax, dword [ebp - 0x14]
setl dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
pop eax
setne dl
sub edx, dword [ebp - 0x30]
cmp eax, edx
mov eax, dword [ebp - 0x30]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setne dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
test ecx, ecx
lea ecx, [ebp - 0xc98]
sete al
mov dword [ebp - 0x20], eax
xor eax, eax
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x20]
push 0
mov dword [eax], ecx
mov eax, dword [ebp - 0x20]
dec dword [ebp - 0x28]
pop eax
jns 0x1003989e
push 2
pop edx
mov dword [ebp - 0x28], eax
jmp 0x100399b6
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], eax
jl 0x100399b3
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x2d0]
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x2d4], ecx
dec dword [ebp - 0x24]
jns 0x10039998
xor eax, eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edx
jle 0x10039990
dec dword [ebp - 0x30]
jns 0x1003988b
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x100399e3
push eax
push 0x26a5
push 0x1046
push 0x18e9
call dword [sym.imp.KERNEL32.dll_RaiseException]
lea ecx, [ebp - 0xc98]
mov dword [ebp - 4], esi
call fcn.1001aea5
mov dword [ebp - 0x2c], 0x46db5052
lea ecx, [ebp - 0xa78]
mov dword [ebp - 0x24], 0xfffffff6
push ebx
call fcn.1001ae23
xor eax, eax
mov dword [ebp - 4], 0x25
mov dword [ebp - 0x14], eax
jmp 0x10039a2c
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa78]
call fcn.1001aec1
mov dword [eax], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10039a19
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp eax, 0x1f66
push 2
setle cl
xor eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x24], eax
pop eax
cmp dword [ebp - 0x24], eax
jge 0x10039cf2
push eax
lea ecx, [ebp - 0xa60]
call fcn.1001ae23
mov byte [ebp - 4], 0x26
xor eax, eax
mov dword [ebp - 0x50], 0x9c2b2e5f
push 2
mov dword [ebp - 0x14], eax
pop esi
cmp dword [ebp - 0x14], esi
jge 0x10039a94
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa60]
call fcn.1001aec1
mov dword [eax], 0xf5f49900
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10039a76
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x10039ab2
push eax
push eax
push 0x15b5
push 0x26ac
push eax
call dword [sym.imp.USER32.dll_ModifyMenuW]
xor eax, eax
mov dword [ebp - 0x2c], eax
jmp 0x10039cc7
mov dword [ebp - 0x38], 0xfffffffd
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x38], eax
jl 0x10039caf
movdqa xmm0, xmmword [0x10007e50]
lea eax, [ebp - 0x1504]
push eax
lea eax, [ebp - 0x1514]
push eax
lea ecx, [ebp - 0x1808]
movdqu xmmword [ebp - 0x1514], xmm0
call fcn.1001aed0
lea ecx, [ebp - 0x281]
mov esi, eax
call fcn.10008d63
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x45c]
push dword [esi]
call fcn.1001ae7f
push 2
pop esi
push esi
lea ecx, [ebp - 0x828]
mov byte [ebp - 4], 0x27
call fcn.1001ae23
xor eax, eax
mov byte [ebp - 4], 0x28
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10039b56
or ebx, 0xffffffff
push dword [ebp - 0x14]
lea ecx, [ebp - 0x828]
call fcn.1001aec1
mov dword [eax], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10039b3b
xor ebx, ebx
inc ebx
push esi
lea ecx, [ebp - 0x45c]
call fcn.1001aec1
and dword [eax], 0
jmp 0x10039c76
mov dword [ebp - 0x14], 0x35edade0
xor eax, eax
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], eax
jl 0x10039c68
push ebx
lea ecx, [ebp - 0x828]
call fcn.1001aec1
cmp dword [eax], 0
jne 0x10039bd6
push esi
lea ecx, [ebp - 0x45c]
call fcn.1001aec1
push ebx
lea ecx, [ebp - 0x45c]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x50]
call fcn.1001aec1
push ebx
lea ecx, [ebp - 0x828]
call fcn.1001aec1
xor eax, eax
lea ecx, [ebp - 0x45c]
push eax
call fcn.1001aec1
mov eax, dword [ebp - 0x50]
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa60]
call fcn.1001aec1
push dword [ebp - 0x38]
lea ecx, [ebp - 0xa60]
mov esi, eax
call fcn.1001aec1
xor edx, edx
mov ecx, dword [eax]
mov dword [esi], ecx
mov ecx, dword [ebp - 0x38]
cmp dword [esi], ecx
lea ecx, [ebp - 0x828]
setge dl
xor ebx, ebx
cmp edx, 0x19d88c83
setl bl
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
cmp ebx, 0x1efae07d
push 0xfffffffffffffffe
setle cl
xor ebx, ebx
pop edx
cmp ecx, edx
lea ecx, [ebp - 0xa78]
setle bl
sub ebx, dword [eax]
xor eax, eax
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x24]
xor edx, edx
cmp ebx, ecx
push 1
sete dl
mov dword [eax], edx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
pop ebx
mov dword [ebp - 0x34], 0xfffffffd
dec dword [ebp - 0x14]
push 2
pop esi
jns 0x10039b82
push esi
lea ecx, [ebp - 0x45c]
call fcn.1001aec1
inc dword [eax]
push esi
lea ecx, [ebp - 0x45c]
call fcn.1001aec1
cmp dword [eax], ebx
jle 0x10039b6a
lea ecx, [ebp - 0x828]
call fcn.1001aea5
lea ecx, [ebp - 0x45c]
mov byte [ebp - 4], 0x26
call fcn.1001aea5
dec dword [ebp - 0x38]
jns 0x10039acd
xor eax, eax
push eax
lea ecx, [ebp - 0xa78]
call fcn.1001aec1
push 0
mov dword [eax], 0x7e05af84
inc dword [ebp - 0x2c]
pop eax
cmp dword [ebp - 0x2c], 0xa
jg 0x10039aba
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x25
call fcn.1001aea5
inc dword [ebp - 0x24]
push 2
pop eax
cmp dword [ebp - 0x24], eax
jl 0x10039a52
or esi, 0xffffffff
lea ecx, [ebp - 0xa78]
mov dword [ebp - 4], esi
call fcn.1001aea5
push 6
pop eax
mov dword [ebp - 0x30], eax
lea ecx, [ebp - 0xe48]
mov dword [ebp - 0x24], 0x90e69cd1
push ebx
call fcn.1001ae23
xor eax, eax
mov dword [ebp - 4], 0x29
push 3
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x10039d44
push 0xfffffffffffffffe
pop edx
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2e0], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10039d30
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10039d6a
push dword [ebp - 0x18]
lea ecx, [ebp - 0xe48]
call fcn.1001aec1
mov dword [eax], 0x8fb5c4ce
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10039d4c
xor eax, eax
push 2
pop edx
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], eax
jl 0x10039eb2
mov dword [ebp - 0x28], 0x76ff55e0
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], eax
jl 0x10039e79
mov dword [ebp - 0x14], 0x51c8
mov dword [ebp - 0x20], 0xa0e1c2a9
cmp dword [ebp - 0x2d8], eax
je 0x10039db5
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0x2e0], 0
je 0x10039db3
mov ecx, ebx
jmp 0x10039db7
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x30]
cmp ecx, dword [ebp + eax*4 - 0x2e0]
jge 0x10039dc6
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
xor edx, edx
push 0xfffffffffffffffe
mov eax, dword [ebp + eax*4 - 0x2e0]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp + eax*4 - 0x2e0]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp + eax*4 - 0x2e0]
mov eax, dword [ebp - 0x2dc]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
mov dword [ebp + eax*4 - 0x2e0], edx
xor eax, eax
cmp edx, 0xfffffff9
setg al
xor edx, edx
cmp eax, 0xb060
mov eax, dword [ebp - 0x14]
setl dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
pop eax
setne dl
sub edx, dword [ebp - 0x30]
cmp eax, edx
mov eax, dword [ebp - 0x30]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setne dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
test ecx, ecx
lea ecx, [ebp - 0xe48]
sete al
mov dword [ebp - 0x20], eax
xor eax, eax
push eax
call fcn.1001aec1
mov ecx, dword [ebp - 0x20]
push 0
mov dword [eax], ecx
mov eax, dword [ebp - 0x20]
dec dword [ebp - 0x28]
pop eax
jns 0x10039d8c
push 2
pop edx
mov dword [ebp - 0x28], eax
jmp 0x10039ea4
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], eax
jl 0x10039ea1
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x2dc]
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x2e0], ecx
dec dword [ebp - 0x24]
jns 0x10039e86
xor eax, eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edx
jle 0x10039e7e
dec dword [ebp - 0x30]
jns 0x10039d79
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x10039ed1
push eax
push 0x26a5
push 0x1046
push 0x18e9
call dword [sym.imp.KERNEL32.dll_RaiseException]
lea ecx, [ebp - 0xe48]
mov dword [ebp - 4], esi
call fcn.1001aea5
mov dword [ebp - 0x28], 9
lea ecx, [ebp - 0xcb0]
push ebx
call fcn.1001ae23
mov dword [ebp - 4], 0x2a
lea ecx, [ebp - 0x844]
push 3
mov dword [ebp - 0x3c], 0xd3e99730
pop eax
mov dword [ebp - 0x3c], 0xfffffffa
mov dword [ebp - 0x3c], 0x2377d644
mov dword [ebp - 0x40], 0xf5291260
push eax
call fcn.1001ae23
mov byte [ebp - 4], 0x2b
xor eax, eax
mov dword [ebp - 0x34], 0x314648a5
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x10039f57
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xcb0]
call fcn.1001aec1
mov dword [eax], 0x82b4746a
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10039f39
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 4
jge 0x10039f79
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1800], 0x8f6a1c3d
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10039f60
xor eax, eax
push 3
mov dword [ebp - 0x1c], eax
pop ebx
jmp 0x10039f98
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x844]
call fcn.1001aec1
mov dword [eax], 0x3cd4
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10039f81
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0xcb0]
mov esi, dword [ebp - 0x28]
xor eax, eax
push eax
call fcn.1001aec1
mov edx, dword [ebp - 0x28]
sub edx, 0xfffffff9
neg edx
mov dword [eax], esi
sbb edx, edx
xor ecx, ecx
inc edx
add edx, dword [ebp - 0x28]
imul edx, esi
mov dword [ebp - 0x17fc], edx
mov eax, dword [ebp - 0x28]
sub edx, eax
mov eax, dword [ebp - 0x28]
cmp edx, eax
setl cl
imul ecx, dword [ebp - 0x28]
imul eax, ecx, 0xd0d3
lea ecx, [ebp - 0x844]
add eax, dword [ebp - 0x28]
mov dword [ebp - 0x40], eax
xor eax, eax
push eax
call fcn.1001aec1
mov esi, dword [ebp - 0x40]
xor edx, edx
mov ecx, dword [ebp - 0x28]
add esi, 0xefe8
cmp esi, ecx
lea ecx, [ebp - 0x844]
push 2
setg dl
xor ebx, ebx
cmp edx, dword [eax]
pop esi
push esi
setle bl
call fcn.1001aec1
mov ecx, dword [ebp - 0x28]
xor edx, edx
cmp ebx, ecx
lea ecx, [ebp - 0x844]
push esi
setne dl
xor ebx, ebx
cmp edx, dword [eax]
setge bl
call fcn.1001aec1
lea ecx, [ebp - 0x844]
sub ebx, dword [eax]
mov dword [ebp - 0x34], ebx
call fcn.1001aea5
or eax, 0xffffffff
lea ecx, [ebp - 0xcb0]
mov dword [ebp - 4], eax
call fcn.1001aea5
mov dword [ebp - 0x24], 0x17571177
xor ebx, ebx
mov dword [ebp - 0x40], 0x3895196e
inc ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x24], 0xfffffff6
jmp 0x1003a22b
xor eax, eax
mov dword [ebp - 0x34], 4
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1003a0b0
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xec], 0x3245f1db
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1003a098
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1003a0d0
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x768], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1003a0b8
xor eax, eax
push 3
mov dword [ebp - 0x1c], eax
pop ecx
jmp 0x1003a0e9
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x10d4], 0x4ba31e46
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x1003a0d8
mov dword [ebp - 0xec], 7
cmp dword [ebp - 0xec], 0x14
jge 0x1003a228
mov dword [ebp - 0x20], 0x147909b7
lea ecx, [ebp - 0xf74]
mov dword [ebp - 0x3c], 0x6efba1a4
or eax, 0xffffffff
mov dword [ebp - 0x3c], 0xe00f6802
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x14], 0xc01e07ad
push esi
call fcn.1001ae23
mov dword [ebp - 4], 0x2c
xor eax, eax
mov dword [ebp - 0x50], 5
push 2
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x1003a169
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x10b4], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x1003a151
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x1003a18e
push dword [ebp - 0x18]
lea ecx, [ebp - 0xf74]
call fcn.1001aec1
mov dword [eax], 0x5e60
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1003a171
inc dword [ebp - 0x10d4]
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x54], 0xfffd
push 0
sbb eax, eax
neg eax
pop eax
sets al
xor edx, edx
mov dword [ebp - 0x10b4], eax
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x44]
neg ecx
cmp eax, ecx
lea ecx, [ebp - 0xf74]
push 7
setne dl
add edx, dword [ebp - 0x24]
imul edx, dword [ebp - 0x58]
pop esi
mov dword [ebp - 0x768], edx
mov eax, dword [ebp - 0x14]
sub esi, eax
xor eax, eax
push eax
call fcn.1001aec1
xor ecx, ecx
mov dword [eax], esi
mov eax, dword [ebp - 0x20]
cmp esi, eax
sete cl
add ecx, dword [ebp - 0x40]
mov dword [ebp - 0x50], ecx
lea ecx, [ebp - 0xf74]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x54], eax
or eax, 0xffffffff
mov dword [ebp - 4], eax
call fcn.1001aea5
inc dword [ebp - 0xec]
cmp dword [ebp - 0xec], 0x14
push 2
pop esi
jl 0x1003a105
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jge 0x1003a07e
push ebx
lea ecx, [ebp - 0x6d8]
call fcn.1001ae23
or eax, 0xffffffff
mov dword [ebp - 4], 0x2d
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0xa90]
push ebx
call fcn.1001ae23
mov byte [ebp - 4], 0x2e
xor eax, eax
mov dword [ebp - 0x44], 0xe2632c5b
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x1003a289
push dword [ebp - 0x18]
lea ecx, [ebp - 0x6d8]
call fcn.1001aec1
mov dword [eax], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x1003a26f
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x1003a2af
push dword [ebp - 0x18]
lea ecx, [ebp - 0xa90]
call fcn.1001aec1
mov dword [eax], 0x89a69576
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x1003a291
push eax
lea ecx, [ebp - 0x6d8]
call fcn.1001aec1
xor ebx, ebx
lea ecx, [ebp - 0x6d8]
cmp dword [eax], 0x5f9c7104
setle bl
xor eax, eax
push eax
sub ebx, 0x6d39112f
call fcn.1001aec1
lea ecx, [ebp - 0xa90]
mov eax, dword [eax]
imul eax, ebx
imul esi, eax, 0xcf04
xor eax, eax
push eax
call fcn.1001aec1
xor ebx, ebx
lea ecx, [ebp - 0xa90]
cmp esi, dword [eax]
setne bl
xor eax, eax
push eax
call fcn.1001aec1
mov ecx, dword [eax]
mov eax, dword [ebp - 0x34]
add ecx, ebx
xor ebx, ebx
cmp eax, ecx
lea ecx, [ebp - 0x6d8]
setge bl
xor eax, eax
push eax
call fcn.1001aec1
mov esi, eax
lea ecx, [ebp - 0x6d8]
xor eax, eax
push eax
call fcn.1001aec1
mov ecx, dword [esi]
xor edx, edx
cmp ecx, dword [eax]
setg dl
xor eax, eax
sub edx, ebx
mov dword [ebp - 0x44], edx
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x1003a362