Function at 0x1004fb56
Capabilities:
Check os version
Get file attributes
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100768c9
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x414
push esi
push edi
mov dword [ebp - 0x48], 0x3ae35568
mov dword [ebp - 0xc4], 1
mov dword [ebp - 0x48], 0
jmp 0x1004fb97
mov eax, dword [ebp - 0x48]
dec eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0xffffffe2
jg 0x1004ff78
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x2e8], 0x20a2e71c
mov dword [ebp - 0x2f0], 0xfffffffa
mov dword [ebp - 0x9c], 0
jmp 0x1004fbd5
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x9c], 3
jge 0x1004fbf1
mov eax, dword [ebp - 0x9c]
mov dword [ebp + eax*4 - 0x324], 6
jmp 0x1004fbc8
mov dword [ebp - 0x20], 2
jmp 0x1004fc01
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x1004ff5f
mov dword [ebp - 0x6c], 0xeb60
mov dword [ebp - 0x5c], 0xfffffff7
cmp dword [ebp - 0x20], 0
je 0x1004fc2b
cmp dword [ebp - 0x20], 1
je 0x1004fc2b
cmp dword [ebp - 0x6c], 0
jne 0x1004fc3a
cmp dword [ebp - 0x6c], 0
jne 0x1004fc3a
and dword [ebp - 0x21c], 0
jmp 0x1004fc44
mov dword [ebp - 0x21c], 1
mov eax, dword [ebp - 0x6c]
cmp dword [ebp - 0x21c], eax
jl 0x1004fc5b
mov dword [ebp - 0x270], 1
jmp 0x1004fc62
and dword [ebp - 0x270], 0
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x1e4], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1e4]
mov dword [ebp + eax*4 - 0x324], ecx
mov eax, dword [ebp - 0x5c]
add eax, dword [ebp - 0x270]
cmp dword [ebp - 0x1e4], eax
jge 0x1004fc98
mov dword [ebp - 0xe8], 1
jmp 0x1004fc9f
and dword [ebp - 0xe8], 0
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x6c]
add eax, dword [ebp - 0x20]
mov dword [ebp - 0x5c], eax
je 0x1004fdc6
mov dword [ebp - 0x90], 0x973063d6
mov dword [ebp - 0x298], 0x4ed09eb8
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x3cc], eax
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x3b8], eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x3bc], eax
mov eax, dword [ebp - 0x5c]
cmp dword [ebp - 0x90], eax
jne 0x1004fd09
mov dword [ebp - 0x200], 1
jmp 0x1004fd10
and dword [ebp - 0x200], 0
cmp dword [ebp - 0x200], 0xffffffff
jg 0x1004fd25
mov dword [ebp - 0xf0], 1
jmp 0x1004fd2c
and dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
add eax, dword [ebp - 0x90]
sub eax, dword [ebp - 0x6c]
cmp eax, 0xdd71
jne 0x1004fd54
mov dword [ebp - 0x208], 1
jmp 0x1004fd5b
and dword [ebp - 0x208], 0
mov eax, dword [ebp - 0x298]
cmp dword [ebp - 0x208], eax
je 0x1004fd75
mov dword [ebp - 0xf8], 1
jmp 0x1004fd7c
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x324]
cmp dword [ebp - 0xf8], eax
je 0x1004fd9a
mov dword [ebp - 0x210], 1
jmp 0x1004fda1
and dword [ebp - 0x210], 0
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x2e8], eax
mov byte [ebp - 0x57], 0
movzx eax, byte [ebp - 0x57]
test eax, eax
je 0x1004fdc1
push 0
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
jmp 0x1004ff5a
mov dword [ebp - 0xac], 0
jmp 0x1004fddf
mov eax, dword [ebp - 0xac]
inc eax
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 2
jge 0x1004fdfb
mov eax, dword [ebp - 0xac]
mov dword [ebp + eax*4 - 0x338], 0xb4ccc414
jmp 0x1004fdd2
cmp dword [ebp - 0x48], 0xfffffffe
jge 0x1004fe0d
mov dword [ebp - 0x100], 1
jmp 0x1004fe14
and dword [ebp - 0x100], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x338]
cmp dword [ebp - 0x100], eax
je 0x1004fe35
mov dword [ebp - 0x218], 1
jmp 0x1004fe3c
and dword [ebp - 0x218], 0
push 4
pop eax
shl eax, 1
mov ecx, 0x8d56
sub ecx, dword [ebp + eax - 0x324]
mov eax, dword [ebp - 0x48]
cmp dword [ebp - 0x218], eax
je 0x1004fe64
mov dword [ebp - 0x108], 1
jmp 0x1004fe6b
and dword [ebp - 0x108], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x324]
cmp dword [ebp - 0x108], eax
jne 0x1004fe8c
mov dword [ebp - 0x220], 1
jmp 0x1004fe93
and dword [ebp - 0x220], 0
cmp dword [ebp - 0x220], 0x46aa
jl 0x1004feab
mov dword [ebp - 0x110], 1
jmp 0x1004feb2
and dword [ebp - 0x110], 0
cmp dword [ebp - 0x110], 0x4179
jg 0x1004feca
mov dword [ebp - 0x228], 1
jmp 0x1004fed1
and dword [ebp - 0x228], 0
imul eax, dword [ebp - 0x228], 0xfff7
cmp eax, 0xfffffff6
je 0x1004feec
mov dword [ebp - 0x118], 1
jmp 0x1004fef3
and dword [ebp - 0x118], 0
mov eax, dword [ebp - 0xc4]
cmp dword [ebp - 0x118], eax
jne 0x1004ff0d
mov dword [ebp - 0x230], 1
jmp 0x1004ff14
and dword [ebp - 0x230], 0
imul eax, dword [ebp - 0x230], 0x65e1
cmp eax, dword [ebp - 0x20]
jl 0x1004ff3f
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x338], 0
je 0x1004ff3f
mov dword [ebp - 0x120], 1
jmp 0x1004ff46
and dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x2f0], eax
cmp dword [ebp - 0x48], 0
je 0x1004ff5a
jmp 0x1004ff5f
jmp 0x1004fbfa
mov byte [ebp - 0x3f], 0
movzx eax, byte [ebp - 0x3f]
test eax, eax
je 0x1004ff73
push 0
call dword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x1004fb90
mov dword [ebp - 0x3c0], 0xcdb8faaa
mov dword [ebp - 0x1c], 0x7cf2
push 2
lea ecx, [ebp - 0x80]
call fcn.1001737c
and dword [ebp - 4], 0
mov dword [ebp - 0x24], 0x3fe662db
mov dword [ebp - 0x2c], 0x43ddca27
mov dword [ebp - 0x50], 0xfffe
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x98], 0
jmp 0x1004ffcc
mov eax, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 2
jge 0x1004ffeb
push dword [ebp - 0x98]
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov dword [eax], 0xfe30f587
jmp 0x1004ffbf
mov eax, 0x7276
test eax, eax
je 0x100500c3
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x388], eax
push 0
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x38c], eax
mov eax, 0xffff
cmp eax, 0x4ef2
jbe 0x1005002c
mov dword [ebp - 0x2f8], 1
jmp 0x10050033
and dword [ebp - 0x2f8], 0
push 1
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x1c], eax
jge 0x10050051
mov dword [ebp - 0x238], 1
jmp 0x10050058
and dword [ebp - 0x238], 0
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x238]
je 0x10050073
xor eax, eax
je 0x10050073
mov dword [ebp - 0x128], 1
jmp 0x1005007a
and dword [ebp - 0x128], 0
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
je 0x100500a4
push 0
lea ecx, [ebp - 0x80]
call fcn.1001740a
cmp dword [eax], 0
je 0x100500a4
mov dword [ebp - 0x240], 1
jmp 0x100500ab
and dword [ebp - 0x240], 0
push 0
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov ecx, dword [ebp - 0x240]
sub ecx, dword [eax]
jne 0x100500d2
xor eax, eax
jne 0x100500d2
cmp dword [ebp - 0x2c], 0
jne 0x100500d2
and dword [ebp - 0x130], 0
jmp 0x100500dc
mov dword [ebp - 0x130], 1
mov eax, dword [ebp - 0x130]
add eax, 0x437
imul eax, eax, 0xffff
test eax, eax
jne 0x10050100
cmp dword [ebp - 0x1c], 0
jne 0x10050100
and dword [ebp - 0x300], 0
jmp 0x1005010a
mov dword [ebp - 0x300], 1
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x50]
dec eax
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x50], eax
jle 0x1005012e
mov dword [ebp - 0x2e4], 1
jmp 0x10050135
and dword [ebp - 0x2e4], 0
mov esi, dword [ebp - 0x1c]
push 1
lea ecx, [ebp - 0x80]
call fcn.1001740a
cmp esi, dword [eax]
jne 0x10050152
mov dword [ebp - 0x248], 1
jmp 0x10050159
and dword [ebp - 0x248], 0
push 0
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov ecx, dword [ebp - 0x248]
cmp ecx, dword [eax]
jle 0x10050179
mov dword [ebp - 0x138], 1
jmp 0x10050180
and dword [ebp - 0x138], 0
mov eax, dword [ebp - 0x138]
dec eax
mov dword [ebp - 0x2c], eax
mov esi, dword [ebp - 0x2c]
add esi, 4
push 1
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov dword [eax], esi
push 0
lea ecx, [ebp - 0x80]
call fcn.1001740a
cmp dword [eax], 0
jne 0x100501bd
mov eax, 0x8f9e
test eax, eax
jne 0x100501bd
and dword [ebp - 0x140], 0
jmp 0x100501c7
mov dword [ebp - 0x140], 1
mov esi, dword [ebp - 0x1c]
push 1
lea ecx, [ebp - 0x80]
call fcn.1001740a
cmp esi, dword [eax]
jne 0x100501e6
xor eax, eax
inc eax
jne 0x100501e6
and dword [ebp - 0x250], 0
jmp 0x100501f0
mov dword [ebp - 0x250], 1
cmp dword [ebp - 0x250], 0
jle 0x10050205
mov dword [ebp - 0x258], 1
jmp 0x1005020c
and dword [ebp - 0x258], 0
mov eax, dword [ebp - 0x140]
cmp eax, dword [ebp - 0x258]
jl 0x10050226
mov dword [ebp - 0x148], 1
jmp 0x1005022d
and dword [ebp - 0x148], 0
push 0
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov ecx, dword [ebp - 0x148]
cmp ecx, dword [eax]
je 0x1005024d
mov dword [ebp - 0x260], 1
jmp 0x10050254
and dword [ebp - 0x260], 0
push 1
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov esi, dword [eax]
add esi, dword [ebp - 0x2c]
push 1
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov ecx, dword [ebp - 0x260]
sub ecx, dword [eax]
sub esi, ecx
mov dword [ebp - 0x268], esi
push 0
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov ecx, dword [ebp - 0x268]
mov dword [eax], ecx
cmp dword [ebp - 0x268], 0xaef2d6a3
jne 0x100502a7
mov dword [ebp - 0x150], 1
jmp 0x100502ae
and dword [ebp - 0x150], 0
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
je 0x100502cf
cmp dword [ebp - 0x3c], 0
je 0x100502cf
mov dword [ebp - 0x158], 1
jmp 0x100502d6
and dword [ebp - 0x158], 0
cmp dword [ebp - 0x158], 0x93d3b28c
jb 0x100502ec
cmp dword [ebp - 0x24], 0
je 0x100503ed
mov dword [ebp - 0x2c4], 0xfffffffc
mov dword [ebp - 0x50], 0x17
jmp 0x10050306
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0x20
jle 0x100503eb
mov dword [ebp - 0x2b8], 0xfedea8f4
mov byte [ebp - 0x54], 0
movzx eax, byte [ebp - 0x54]
test eax, eax
je 0x10050334
push 0
push 0
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_RegGetKeySecurity]
mov dword [ebp - 0x1c], 0x13
jmp 0x10050344
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x3a
jg 0x100503e6
mov dword [ebp - 0x24], 0
jmp 0x1005035e
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 1
jg 0x100503e1
mov dword [ebp - 0x3c], 0
jmp 0x10050374
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 1
jg 0x100503dc
push dword [ebp - 0x24]
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov esi, eax
push dword [ebp - 0x24]
lea ecx, [ebp - 0x80]
call fcn.1001740a
mov ecx, dword [esi]
mov dword [eax], ecx
cmp dword [ebp - 0x24], 1
jge 0x100503a8
mov dword [ebp - 0x15c], 1
jmp 0x100503af
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x2b8]
cmp eax, dword [ebp - 0x15c]
jl 0x100503c9
mov dword [ebp - 0x2a4], 1
jmp 0x100503d0
and dword [ebp - 0x2a4], 0
mov dword [ebp - 0x2c4], 0
jmp 0x1005036d
jmp 0x10050357
jmp 0x1005033d
jmp 0x100502ff
jmp 0x10050401
mov byte [ebp - 0x41], 0
movzx eax, byte [ebp - 0x41]
test eax, eax
je 0x10050401
push 0
call dword [sym.imp.USER32.dll_GetMenuItemCount]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x80]
call fcn.10017405
push 3
lea ecx, [ebp - 0x358]
call fcn.1001737c
mov dword [ebp - 4], 1
mov dword [ebp - 0x28], 0x9fe387fb
mov dword [ebp - 0xb4], 0
jmp 0x10050441
mov eax, dword [ebp - 0xb4]
inc eax
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 3
jge 0x1005045d
mov eax, dword [ebp - 0xb4]
mov dword [ebp + eax*4 - 0x294], 0xffffffff
jmp 0x10050434
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x28]
mov dword [ebp + eax - 0x294], ecx
mov dword [ebp - 0x28], 0
jmp 0x1005047d
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 2
jg 0x1005056c
mov dword [ebp - 0x1ec], 0x54c97515
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x294], 0
jae 0x100504ad
mov dword [ebp - 0x22c], 1
jmp 0x100504b4
and dword [ebp - 0x22c], 0
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0x294]
add eax, dword [ebp - 0x22c]
cmp eax, 0x67e6aa14
jg 0x100504d7
mov dword [ebp - 0x164], 1
jmp 0x100504de
and dword [ebp - 0x164], 0
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x1ec], eax
mov eax, dword [ebp - 0x1ec]
neg eax
add eax, 0x18d9
mov ecx, dword [ebp - 0x28]
cmp dword [ebp + ecx*4 - 0x294], eax
je 0x1005050f
mov dword [ebp - 0x16c], 1
jmp 0x10050516
and dword [ebp - 0x16c], 0
cmp dword [ebp - 0x16c], 0xfffffffc
jl 0x1005052b
mov dword [ebp - 0x26c], 1
jmp 0x10050532
and dword [ebp - 0x26c], 0
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0x294]
cmp dword [ebp - 0x26c], eax
jle 0x10050550
mov dword [ebp - 0x174], 1
jmp 0x10050557
and dword [ebp - 0x174], 0
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x174]
mov dword [ebp + eax*4 - 0x294], ecx
jmp 0x10050476
mov dword [ebp - 0x39c], 0x3c67ee39
mov dword [ebp - 0x2ac], 0x1852
mov dword [ebp - 0x68], 0xfffffffe
mov dword [ebp - 0xa0], 0
jmp 0x100505a0
mov eax, dword [ebp - 0xa0]
inc eax
mov dword [ebp - 0xa0], eax
cmp dword [ebp - 0xa0], 3
jge 0x100505bc
mov eax, dword [ebp - 0xa0]
mov dword [ebp + eax*4 - 0x3e4], 0x47dc4b4e
jmp 0x10050593
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x68], 2
jmp 0x100505d5
mov eax, dword [ebp - 0x68]
dec eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jl 0x100505f3
mov eax, dword [ebp - 0x68]
push 4
pop ecx
shl ecx, 1
mov eax, dword [ebp + eax*4 - 0x3e4]
mov dword [ebp + ecx - 0x3e4], eax
jmp 0x100505ce
mov dword [ebp - 0x34c], 0x13d
mov dword [ebp - 0x348], 0x13d
mov dword [ebp - 0x344], 0x13d
mov dword [ebp - 0x340], 0x13d
lea ecx, [ebp - 0xd1]
call fcn.100088c3
push eax
lea eax, [ebp - 0x33c]
push eax
lea eax, [ebp - 0x34c]
push eax
lea ecx, [ebp - 0x414]
call fcn.10017419
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x370]
call fcn.100173db
mov byte [ebp - 4], 2
push 2
lea ecx, [ebp - 0x27c]
call fcn.1001737c
mov byte [ebp - 4], 3
push 4
lea ecx, [ebp - 0x318]
call fcn.1001737c
mov byte [ebp - 4], 4
mov dword [ebp - 0x30], 0
jmp 0x10050686
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x100506a2
push dword [ebp - 0x30]
lea ecx, [ebp - 0x27c]
call fcn.1001740a
mov dword [eax], 0xdf99ff60
jmp 0x1005067f
mov dword [ebp - 0x30], 0
jmp 0x100506b2
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
jge 0x100506ce
push dword [ebp - 0x30]
lea ecx, [ebp - 0x318]
call fcn.1001740a
mov dword [eax], 1
jmp 0x100506ab
push 1
lea ecx, [ebp - 0x27c]
call fcn.1001740a
and dword [eax], 0
jmp 0x10050704
push 1
lea ecx, [ebp - 0x27c]
call fcn.1001740a
mov dword [ebp - 0x1f4], eax
mov eax, dword [ebp - 0x1f4]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x1f4]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x27c]
call fcn.1001740a
cmp dword [eax], 0x11
jge 0x1005099a
mov dword [ebp - 0x2c8], 0xec79cf18
mov dword [ebp - 0x3a4], 0x6887e0
mov dword [ebp - 0x3ac], 1
mov dword [ebp - 0x19c], 0xc73f
mov dword [ebp - 0xb0], 0
jmp 0x1005075b
mov eax, dword [ebp - 0xb0]
inc eax
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0xb0], 3
jge 0x10050777
mov eax, dword [ebp - 0xb0]
mov dword [ebp + eax*4 - 0x288], 0
jmp 0x1005074e
push 4
pop eax
shl eax, 1
mov dword [ebp + eax - 0x288], 3
jmp 0x100507a2
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x288]
inc eax
push 4
pop ecx
shl ecx, 1
mov dword [ebp + ecx - 0x288], eax
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x288], 0x1c
jne 0x10050988
mov dword [ebp - 0xa8], 0xfffffffd
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x288], 0
je 0x100507e7
mov dword [ebp - 0x3b4], 0xffffffff
mov eax, dword [ebp - 0xa8]
dec eax
mov dword [ebp - 0xa8], eax
jmp 0x10050806
mov byte [ebp - 0x52], 0
movzx eax, byte [ebp - 0x52]
test eax, eax
je 0x100507fb
push 0
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
cmp dword [ebp - 0x2c8], 0
je 0x10050806
jmp 0x10050789
xor eax, eax
jne 0x1005093c
push 1
lea ecx, [ebp - 0x27c]
call fcn.1001740a
cmp dword [eax], 0
jne 0x10050933
cmp dword [ebp - 0xa8], 0x4e401d93
je 0x1005083c
mov dword [ebp - 0x17c], 1
jmp 0x10050843
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0xa8]
cmp eax, dword [ebp - 0x17c]
jge 0x1005085d
mov dword [ebp - 0x234], 1
jmp 0x10050864
and dword [ebp - 0x234], 0
cmp dword [ebp - 0x234], 0xebdb
je 0x1005087c
mov dword [ebp - 0x184], 1
jmp 0x10050883
and dword [ebp - 0x184], 0
push 1
lea ecx, [ebp - 0x318]
call fcn.1001740a
mov ecx, dword [ebp - 0x184]
cmp ecx, dword [eax]
je 0x100508a6
mov dword [ebp - 0x1fc], 1
jmp 0x100508ad
and dword [ebp - 0x1fc], 0
cmp dword [ebp - 0x1fc], 0xf27142b6
ja 0x100508c5
mov dword [ebp - 0x18c], 1
jmp 0x100508cc
and dword [ebp - 0x18c], 0
push 4
pop eax
shl eax, 1
mov esi, dword [ebp - 0x18c]
sub esi, dword [ebp + eax - 0x288]
push 1
lea ecx, [ebp - 0x27c]
call fcn.1001740a
mov eax, dword [eax]
lea eax, [esi + eax - 0xe10d]
test eax, eax
jbe 0x10050904
mov dword [ebp - 0x254], 1
jmp 0x1005090b
and dword [ebp - 0x254], 0
cmp dword [ebp - 0x254], 0x9390dfc1
jbe 0x10050923
mov dword [ebp - 0x2b4], 1
jmp 0x1005092a
and dword [ebp - 0x2b4], 0
mov eax, 0x80a3888a
test eax, eax
je 0x1005093c
and dword [ebp - 0x194], 0
jmp 0x10050946
mov dword [ebp - 0x194], 1
cmp dword [ebp - 0x194], 6
jbe 0x1005095b
mov dword [ebp - 0x204], 1
jmp 0x10050962
and dword [ebp - 0x204], 0
push 4
pop eax
shl eax, 1
mov esi, dword [ebp + eax - 0x288]
add esi, dword [ebp - 0x204]
push 1
lea ecx, [ebp - 0x318]
call fcn.1001740a
mov dword [eax], esi
jmp 0x10050789
mov eax, dword [ebp - 0x19c]
inc eax
mov dword [ebp - 0x19c], eax
jmp 0x100506e0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x318]
call fcn.10017405
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x27c]
call fcn.10017405
mov dword [ebp - 0x3c4], 0x9a13
push 2
lea ecx, [ebp - 0x330]
call fcn.1001737c
mov byte [ebp - 4], 5
push 2
lea ecx, [ebp - 0xc0]
call fcn.1001737c
mov byte [ebp - 4], 6
mov dword [ebp - 0x1a4], 0x2aa61fc2
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0x38], 0
jmp 0x10050a08
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 2
jge 0x10050a21
push dword [ebp - 0x38]
lea ecx, [ebp - 0x330]
call fcn.1001740a
and dword [eax], 0
jmp 0x10050a01
mov dword [ebp - 0x38], 0
jmp 0x10050a31
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 2
jge 0x10050a4d
push dword [ebp - 0x38]
lea ecx, [ebp - 0xc0]
call fcn.1001740a
mov dword [eax], 0x25d16df2
jmp 0x10050a2a
push 1
lea ecx, [ebp - 0xc0]
call fcn.1001740a
and dword [eax], 0
jmp 0x10050a83
push 1
lea ecx, [ebp - 0xc0]
call fcn.1001740a
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp - 0x23c]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x23c]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0xc0]
call fcn.1001740a
cmp dword [eax], 1
jg 0x10050ab8
push 1
lea ecx, [ebp - 0xc0]
call fcn.1001740a
push dword [eax]
lea ecx, [ebp - 0x330]
call fcn.1001740a
cmp dword [eax], 0
je 0x10050ab6
jmp 0x10050ab8
jmp 0x10050a5f
mov dword [ebp - 0x1a4], 0xffffffff
mov esi, dword [ebp - 0x1a4]
push 1
lea ecx, [ebp - 0xc0]
call fcn.1001740a
cmp dword [eax], esi
jle 0x10050ae5
mov dword [ebp - 0x2c0], 1
jmp 0x10050aec
and dword [ebp - 0x2c0], 0
push 0
lea ecx, [ebp - 0xc0]
call fcn.1001740a
imul esi, dword [eax], 0xfa31
push 1
lea ecx, [ebp - 0xc0]
call fcn.1001740a
cmp esi, dword [eax]
jge 0x10050b1c
mov dword [ebp - 0x20c], 1
jmp 0x10050b23
and dword [ebp - 0x20c], 0
push 0
lea ecx, [ebp - 0xc0]
call fcn.1001740a
mov ecx, dword [ebp - 0x20c]
cmp ecx, dword [eax]
je 0x10050b46
mov dword [ebp - 0x2bc], 1
jmp 0x10050b4d
and dword [ebp - 0x2bc], 0
push 1
lea ecx, [ebp - 0xc0]
call fcn.1001740a
push 1
lea ecx, [ebp - 0xc0]
call fcn.1001740a
mov ecx, dword [ebp - 0xdc]
cmp dword [eax], ecx
jle 0x10050b7d
mov dword [ebp - 0x1ac], 1
jmp 0x10050b84
and dword [ebp - 0x1ac], 0
push 1
lea ecx, [ebp - 0x330]
call fcn.1001740a
mov ecx, dword [ebp - 0x1ac]
cmp ecx, dword [eax]
je 0x10050ba7
mov dword [ebp - 0x264], 1
jmp 0x10050bae
and dword [ebp - 0x264], 0
mov eax, dword [ebp - 0xdc]
cmp dword [ebp - 0x264], eax
jg 0x10050bc8
mov dword [ebp - 0x1b4], 1
jmp 0x10050bcf
and dword [ebp - 0x1b4], 0
mov eax, dword [ebp - 0xdc]
cmp dword [ebp - 0x1b4], eax
jge 0x10050be9
mov dword [ebp - 0x214], 1
jmp 0x10050bf0
and dword [ebp - 0x214], 0
push 1
lea ecx, [ebp - 0xc0]
call fcn.1001740a
mov ecx, dword [ebp - 0x214]
mov dword [eax], ecx
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xc0]
call fcn.10017405
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x330]
call fcn.10017405
mov dword [ebp - 0x384], 0xae974ca7
mov dword [ebp - 0x3d4], 0xe0cf5720
mov byte [ebp - 0x49], 0
movzx eax, byte [ebp - 0x49]
test eax, eax
je 0x10050c52
push 0
push 0x19db
push 0
call dword [sym.imp.GDI32.dll_GetRegionData]
mov byte [ebp - 0x53], 0
movzx eax, byte [ebp - 0x53]
test eax, eax
je 0x10050c74
push 0x1d75
push 0
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxW]
mov dword [ebp - 0x3fc], 0x4ff5452f
mov dword [ebp - 0x10], 0x2e08
mov dword [ebp - 0x70], 0xb0befcdf
mov dword [ebp - 0x34], 0xc1dfe936
mov dword [ebp - 0x74], 1
mov dword [ebp - 0xd8], 0xc0de450b
mov dword [ebp - 0x2e0], 1
mov dword [ebp - 0x88], 0
jmp 0x10050cc7
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 4
jge 0x10050ce3
mov eax, dword [ebp - 0x88]
mov dword [ebp + eax*4 - 0x380], 0x80095520
jmp 0x10050cba
push 6
pop eax
test eax, eax
je 0x10050d96
cmp dword [ebp - 0x10], 0
je 0x10050d06
cmp dword [ebp - 0x10], 0
je 0x10050d06
mov dword [ebp - 0x1bc], 1
jmp 0x10050d0d
and dword [ebp - 0x1bc], 0
cmp dword [ebp - 0x1bc], 0xffffffff
jl 0x10050d28
cmp dword [ebp - 0x10], 0
je 0x10050d28
mov dword [ebp - 0x244], 1
jmp 0x10050d2f
and dword [ebp - 0x244], 0
mov eax, dword [ebp - 0x244]
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
jne 0x10050d4c
or eax, 0xffffffff
jne 0x10050d4c
and dword [ebp - 0x1c4], 0
jmp 0x10050d56
mov dword [ebp - 0x1c4], 1
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0xfc9b
jg 0x10050d74
mov dword [ebp - 0xe0], 1
jmp 0x10050d7b
and dword [ebp - 0xe0], 0
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0
je 0x10050d96
mov dword [ebp - 0x1cc], 1
jmp 0x10050d9d
and dword [ebp - 0x1cc], 0
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 0
jne 0x10050dbe
mov dword [ebp - 0x25c], 1
jmp 0x10050dc5
and dword [ebp - 0x25c], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x25c], eax
jge 0x10050ddc
mov dword [ebp - 0x2d8], 1
jmp 0x10050de3
and dword [ebp - 0x2d8], 0
mov eax, 0x1466
sub eax, dword [ebp - 0x10]
imul eax, eax, 5
cmp dword [ebp - 0x10], eax
jl 0x10050dff
mov dword [ebp - 0x1d4], 1
jmp 0x10050e06
and dword [ebp - 0x1d4], 0
cmp dword [ebp - 0x1d4], 6
jg 0x10050e1b
mov dword [ebp - 0x224], 1
jmp 0x10050e22
and dword [ebp - 0x224], 0
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x224]
cmp eax, dword [ebp - 0x10]
jg 0x10050e41
push 0xfffffffffffffffd
pop eax
test eax, eax
jne 0x10050e41
and dword [ebp - 0x1dc], 0
jmp 0x10050e4b
mov dword [ebp - 0x1dc], 1
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1dc]
mov dword [ebp + eax - 0x380], ecx
mov dword [ebp - 0x10], 0x17
jmp 0x10050e6e
mov eax, dword [ebp - 0x10]
dec eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xfffffff5
jge 0x1005115d
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x24c], 0x4499c77e
mov dword [ebp - 0x60], 0x5493a50e
mov dword [ebp - 0x1b8], 0xff24264a
mov dword [ebp - 0x1b0], 0xdfef28ed
mov dword [ebp - 0x24c], 0
mov eax, dword [ebp - 0x24c]
sub eax, 0xb
je 0x10050ece
mov eax, 0xa8b1460d
test eax, eax
je 0x10050ece
mov dword [ebp - 0x154], 1
jmp 0x10050ed5
and dword [ebp - 0x154], 0
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0xfffffff7
jle 0x10050ef0
mov dword [ebp - 0x14c], 1
jmp 0x10050ef7
and dword [ebp - 0x14c], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x14c], eax
jl 0x10050f14
cmp dword [ebp - 0x18], 0
je 0x10050f14
mov dword [ebp - 0x160], 1
jmp 0x10050f1b
and dword [ebp - 0x160], 0
mov eax, dword [ebp - 0x160]
neg eax
cmp dword [ebp - 0x34], eax
jg 0x10050f34
mov dword [ebp - 0x168], 1
jmp 0x10050f3b
and dword [ebp - 0x168], 0
mov eax, dword [ebp - 0x168]
sub eax, 0x456014ef
sub eax, dword [ebp - 0x18]
cmp eax, 0xc53a
jge 0x10050f5c
mov dword [ebp - 0x170], 1
jmp 0x10050f63
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x70]
cmp dword [ebp - 0x170], eax
jle 0x10050f7a
mov dword [ebp - 0x178], 1
jmp 0x10050f81
and dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x178], eax
jl 0x10050f98
mov dword [ebp - 0x180], 1
jmp 0x10050f9f
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x180], eax
jne 0x10050fb0
cmp dword [ebp - 0x10], 0
jne 0x10050fc8
cmp dword [ebp - 0x18], 0
jne 0x10050fc8
mov eax, 0x98934eca
test eax, eax
jne 0x10050fc8
and dword [ebp - 0x188], 0
jmp 0x10050fd2
mov dword [ebp - 0x188], 1
mov eax, dword [ebp - 0x188]
sub eax, dword [ebp - 0x1b8]
cmp eax, dword [ebp - 0x10]
jge 0x10050fff
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x380], 0
je 0x10050fff
mov dword [ebp - 0x190], 1
jmp 0x10051006
and dword [ebp - 0x190], 0
cmp dword [ebp - 0x190], 0x206cbc8c
jl 0x1005101e
mov dword [ebp - 0x198], 1
jmp 0x10051025
and dword [ebp - 0x198], 0
cmp dword [ebp - 0x198], 0x29ef
je 0x1005103d
mov dword [ebp - 0x1a0], 1
jmp 0x10051044
and dword [ebp - 0x1a0], 0
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x1a0]
jg 0x1005105b
mov dword [ebp - 0x1a8], 1
jmp 0x10051062
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1b0], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x1b8]
cmp dword [ebp - 0x74], eax
jg 0x1005108e
mov dword [ebp - 0x1c0], 1
jmp 0x10051095
and dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x70]
imul eax, dword [ebp - 0xd8]
test eax, eax
je 0x100510ba
mov eax, dword [ebp - 0x2e0]
mov dword [ebp - 0x74], eax
jmp 0x10051144
mov dword [ebp - 0x34], 0
jmp 0x100510ca
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 3
jg 0x10051118
mov dword [ebp - 0x18], 0
jmp 0x100510e0
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jg 0x100510fc
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp + eax*4 - 0x380]
mov dword [ebp + ecx*4 - 0x380], eax
jmp 0x100510d9
mov byte [ebp - 0x51], 0
movzx eax, byte [ebp - 0x51]
test eax, eax
je 0x10051116
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
jmp 0x100510c3
mov dword [ebp - 0x60], 3
jmp 0x10051128
mov eax, dword [ebp - 0x60]
dec eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
jl 0x10051144
mov byte [ebp - 0x55], 0
movzx eax, byte [ebp - 0x55]
test eax, eax
je 0x10051142
push 0
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
jmp 0x10051121
mov byte [ebp - 0x3d], 0
movzx eax, byte [ebp - 0x3d]
test eax, eax
je 0x10051158
push 0
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
jmp 0x10050e67
mov dword [ebp - 0x2dc], 0xfffffff7
mov dword [ebp - 0xc8], 0xbf58aae0
mov dword [ebp - 0x84], 0xffffffff
mov dword [ebp - 0x84], 0
jmp 0x10051194
mov eax, dword [ebp - 0x84]
dec eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0xfffffff7
jl 0x100511fb
mov dword [ebp - 0xa4], 0
jmp 0x100511b6
mov eax, dword [ebp - 0xa4]
inc eax
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 1
jge 0x100511d2
mov eax, dword [ebp - 0xa4]
mov dword [ebp + eax*4 - 0x2d0], 2
jmp 0x100511a9
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x84]
mov dword [ebp + eax - 0x2d0], ecx
mov byte [ebp - 0x3e], 0
movzx eax, byte [ebp - 0x3e]
test eax, eax
je 0x100511f9
push 0
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
jmp 0x10051187
mov dword [ebp - 0x3d8], 0x5706b379
mov dword [ebp - 0x2ec], 0xfffffff9
mov dword [ebp - 0x3f8], 0x4cff15cc
mov dword [ebp - 0x1d8], 0
mov dword [ebp - 0x1e8], 2
push 3
lea ecx, [ebp - 0x3f4]
call fcn.1001737c
mov byte [ebp - 4], 7
mov dword [ebp - 0xd0], 0xfffffffc
mov dword [ebp - 0x14], 0
jmp 0x10051258
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x1005126e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x2cc], 0xb3921ded
jmp 0x10051251
mov dword [ebp - 0x14], 0
jmp 0x1005127e
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1005129a
push dword [ebp - 0x14]
lea ecx, [ebp - 0x358]
call fcn.1001740a
mov dword [eax], 9
jmp 0x10051277
mov dword [ebp - 0x14], 0
jmp 0x100512aa
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x100512c6
push dword [ebp - 0x14]
lea ecx, [ebp - 0x3f4]
call fcn.1001740a
mov dword [eax], 8
jmp 0x100512a3
push 3
lea ecx, [ebp - 0x370]
call fcn.1001740a
mov dword [ebp - 0x1c8], eax
push 2
lea ecx, [ebp - 0x358]
call fcn.1001740a
mov eax, dword [ebp - 0x1c8]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x1c8]
mov dword [ecx], eax
push 4
pop eax
imul eax, eax, 0
lea eax, [ebp + eax - 0x2cc]
mov dword [ebp - 0x1d0], eax
push 3
lea ecx, [ebp - 0x370]
call fcn.1001740a
mov ecx, dword [ebp - 0x1d0]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1d0]
mov eax, dword [eax]
mov dword [ebp - 0x2f4], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x2d4], eax
mov eax, dword [ebp - 0xd0]
inc eax
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0x2f4]
cmp eax, dword [ebp - 0x2d4]
jle 0x10051362
mov dword [ebp - 0x1e0], 1
jmp 0x10051369
and dword [ebp - 0x1e0], 0
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x1d8], eax
mov eax, dword [ebp - 0x1d8]
mov dword [ebp - 0x1e8], eax
mov eax, dword [ebp - 0x1e0]
sub eax, dword [ebp - 0x2ec]
cmp eax, dword [ebp - 0x1e8]
je 0x100513ad
mov dword [ebp - 0x1f0], 1
jmp 0x100513b4
and dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x1f0]
mov dword [ebp - 0x2dc], eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x3f4]
call fcn.10017405
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x370]
call fcn.10017405
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x358]
call fcn.10017405
push 1
lea eax, [ebp - 0x420]
push eax
xor edx, edx
inc edx
xor ecx, ecx
call fcn.1004c79d
pop ecx
pop ecx
mov esi, eax
lea edi, [ebp - 0x40c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x40c]
lea edi, [ebp - 0x30c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x64], 9
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x1f8], 0x3b8c105a
mov dword [ebp - 0xfc], 0x6bc22736
mov dword [ebp - 0xcc], 0x245c
mov dword [ebp - 0x10c], 0x1031c36b
push 1
lea ecx, [ebp - 0x364]
call fcn.1001737c
mov dword [ebp - 4], 8
mov dword [ebp - 0x144], 0x53b
mov dword [ebp - 0x8c], 0
jmp 0x10051496
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 1
jge 0x100514b5
push dword [ebp - 0x8c]
lea ecx, [ebp - 0x364]
call fcn.1001740a
or dword [eax], 0xffffffff
jmp 0x10051489
mov dword [ebp - 0x1f8], 0x67d9
cmp dword [ebp - 0x1f8], 0xc4ae
je 0x100514d7
mov dword [ebp - 0xe4], 1
jmp 0x100514de
and dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0xe4], eax
jg 0x100514f5
mov dword [ebp - 0x2fc], 1
jmp 0x100514fc
and dword [ebp - 0x2fc], 0
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x390], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x3c8], eax
mov eax, dword [ebp - 0x114]
cmp dword [ebp - 0x94], eax
jge 0x10051534
mov dword [ebp - 0xec], 1
jmp 0x1005153b
and dword [ebp - 0xec], 0
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0xec], eax
je 0x10051552
mov dword [ebp - 0xf4], 1
jmp 0x10051559
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0xf4]
mov dword [ebp - 0xfc], eax
cmp dword [ebp - 0xfc], 0
jne 0x10051580
cmp dword [ebp - 0xcc], 0
jne 0x10051580
and dword [ebp - 0x104], 0
jmp 0x1005158a
mov dword [ebp - 0x104], 1
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x10c]
imul eax, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0x114]
sub ecx, eax
je 0x100515c2
cmp dword [ebp - 0xcc], 0
je 0x100515c2
mov dword [ebp - 0x11c], 1
jmp 0x100515c9
and dword [ebp - 0x11c], 0
mov eax, dword [ebp - 0x64]
add eax, dword [ebp - 0x11c]
mov dword [ebp - 0x124], eax
push 0
lea ecx, [ebp - 0x364]
call fcn.1001740a
mov ecx, dword [ebp - 0x124]
mov dword [eax], ecx
mov eax, dword [ebp - 0x144]
cmp dword [ebp - 0x124], eax
jle 0x10051607
mov dword [ebp - 0x12c], 1
jmp 0x1005160e
and dword [ebp - 0x12c], 0
cmp dword [ebp - 0x12c], 3
je 0x10051623
mov dword [ebp - 0x134], 1
jmp 0x1005162a
and dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x134], eax
jge 0x10051641
mov dword [ebp - 0x13c], 1
jmp 0x10051648
and dword [ebp - 0x13c], 0
mov eax, dword [ebp - 0x13c]
sub eax, 0x3331e340
je 0x1005169b
cmp dword [ebp - 0x144], 0
je 0x1005169b
cmp dword [ebp - 0x94], 0
je 0x1005169b
mov dword [ebp - 0x29c], 0x5ce4ec6f
mov dword [ebp - 0x398], 0
mov dword [ebp - 0x29c], 0
mov byte [ebp - 0x40], 0
lea eax, [ebp - 0x40]
push eax
push 0
call fcn.1004f4ee
pop ecx
pop ecx
jmp 0x1005172d
mov dword [ebp - 0x3e8], 0xfffffffe
mov dword [ebp - 0x3a0], 0x85aa1ede
mov dword [ebp - 0x3d0], 0x81b1d0b8
mov dword [ebp - 0x2a8], 0xf61160dd
mov dword [ebp - 0x2b0], 4
mov dword [ebp - 0x3a8], 1
mov dword [ebp - 0x400], 0xc0f86f4c
mov dword [ebp - 0x3b0], 6
mov dword [ebp - 0x2a0], 0xfffffffc
lea eax, [ebp - 0x2a0]
push eax
push 0x6440
push 0
push 0x63df
call fcn.1004cf38
add esp, 0x10
push 0x215
lea eax, [ebp - 0x2a8]
push eax
push 1
lea eax, [ebp - 0x2b0]
push eax
call fcn.1004cf38
add esp, 0x10
mov byte [ebp - 0x56], 0
movzx eax, byte [ebp - 0x56]
test eax, eax
je 0x10051747
push 0x588f
push 1
call fcn.1004f4ee
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x364]
call fcn.10017405
cmp dword [ebp - 0x30c], 0
je 0x10051773
push 3
push dword [ebp - 0x304]
push dword [ebp - 0x308]
call dword [ebp - 0x30c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret