Function at 0x45fec0
Capabilities:
Check os version
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x47eab0
push 0x40e3c0
mov eax, dword fs:[0]
push eax
add esp, 0xfffff21c
mov eax, dword [0x481398]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0xd8], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
jmp 0x45ff12
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x30
jge 0x45ff43
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jge 0x45ff2b
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x45ff41
mov dword [ebp - 0x1c], 0
jmp 0x45ff09
mov dword [ebp - 0x24], 0
jmp 0x45ff55
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 0x2f
jge 0x45ff86
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
jge 0x45ff6e
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x45ff84
mov dword [ebp - 0x1c], 0
jmp 0x45ff4c
mov edx, 1
test edx, edx
je 0x45ffb7
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45ffac
jmp 0x45ffb7
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x28]
mov dword [ebp - 0x1c], edx
jmp 0x45ff86
mov eax, dword [ebp - 0x1c]
add eax, 0x39
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2c], 0
jmp 0x45ffd2
mov ecx, dword [ebp - 0x2c]
add ecx, 1
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x2c], 0x19
jge 0x45ffe3
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], edx
jmp 0x45ffc9
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45fff5
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x46000d
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x34], 1
mov dword [ebp - 0x38], 2
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x40], 0
jmp 0x46003b
mov edx, dword [ebp - 0x40]
add edx, 1
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], 3
jge 0x460061
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 0x34]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x38]
mov dword [ebp - 0x1c], eax
jmp 0x460032
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 0
mov dword [ebp - 0x44], 0
jmp 0x460083
mov edx, dword [ebp - 0x44]
add edx, 1
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x44], 7
jge 0x4600b5
mov eax, dword [ebp - 0x44]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x4600a9
mov eax, dword [ebp - 0x44]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x4600b0
and eax, 0xbc614e
jmp 0x4600b3
mov dword [ebp - 0x1c], eax
jmp 0x46007a
mov dword [ebp - 4], 0xfffffffe
call fcn.004600c3
jmp 0x4600cb
mov dword [ebp - 0x48], 0
jmp 0x4600dd
mov edx, dword [ebp - 0x48]
add edx, 1
mov dword [ebp - 0x48], edx
cmp dword [ebp - 0x48], 0x10
jge 0x4600ee
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x48]
mov dword [ebp - 0x1c], eax
jmp 0x4600d4
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x460100
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x460118
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 1
mov dword [ebp - 0x4c], 0
jmp 0x460131
mov edx, dword [ebp - 0x4c]
add edx, 1
mov dword [ebp - 0x4c], edx
cmp dword [ebp - 0x4c], 0
jge 0x460163
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x460157
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46015e
and eax, 0xbc614e
jmp 0x460161
mov dword [ebp - 0x1c], eax
jmp 0x460128
mov dword [ebp - 4], 0xfffffffe
call fcn.00460171
jmp 0x460179
mov dword [ebp - 0x50], 0
jmp 0x46018b
mov edx, dword [ebp - 0x50]
add edx, 1
mov dword [ebp - 0x50], edx
cmp dword [ebp - 0x50], 0xb
jge 0x4601bc
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x50]
mov dword [ebp - 0x1c], eax
jge 0x4601a4
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x4601ba
mov dword [ebp - 0x1c], 0
jmp 0x460182
mov dword [ebp - 0x54], 1
mov dword [ebp - 0x58], 1
mov dword [ebp - 0x5c], 2
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x64], 0
jmp 0x4601ea
mov edx, dword [ebp - 0x64]
add edx, 1
mov dword [ebp - 0x64], edx
cmp dword [ebp - 0x64], 4
jge 0x460210
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x58]
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x54], ecx
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x5c]
mov dword [ebp - 0x1c], eax
jmp 0x4601e1
mov ecx, dword [ebp - 0x1c]
add ecx, 4
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x68], 1
mov dword [ebp - 0x6c], 1
mov dword [ebp - 0x70], 2
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x78], 0
jmp 0x460247
mov edx, dword [ebp - 0x78]
add edx, 1
mov dword [ebp - 0x78], edx
cmp dword [ebp - 0x78], 0x10
jge 0x46026d
mov eax, dword [ebp - 0x68]
add eax, dword [ebp - 0x6c]
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x68], ecx
mov edx, dword [ebp - 0x70]
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x70]
mov dword [ebp - 0x1c], eax
jmp 0x46023e
mov ecx, dword [ebp - 0x1c]
add ecx, 0x10
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 2
mov dword [ebp - 0x7c], 0
jmp 0x46028f
mov edx, dword [ebp - 0x7c]
add edx, 1
mov dword [ebp - 0x7c], edx
cmp dword [ebp - 0x7c], 0xf
jge 0x4602c1
mov eax, dword [ebp - 0x7c]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x4602b5
mov eax, dword [ebp - 0x7c]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x4602bc
and eax, 0xbc614e
jmp 0x4602bf
mov dword [ebp - 0x1c], eax
jmp 0x460286
mov dword [ebp - 4], 0xfffffffe
call fcn.004602cf
jmp 0x4602d7
mov edx, 1
test edx, edx
je 0x460308
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4602fd
jmp 0x460308
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x80]
mov dword [ebp - 0x1c], edx
jmp 0x4602d7
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x84], 0
mov ecx, 1
test ecx, ecx
je 0x460362
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x88]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x460344
jmp 0x460362
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x84]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x84]
add eax, 1
mov dword [ebp - 0x84], eax
jmp 0x460318
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 3
mov dword [ebp - 0x8c], 0
jmp 0x46038a
mov edx, dword [ebp - 0x8c]
add edx, 1
mov dword [ebp - 0x8c], edx
cmp dword [ebp - 0x8c], 2
jge 0x4603c5
mov eax, dword [ebp - 0x8c]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x4603b9
mov eax, dword [ebp - 0x8c]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x4603c0
and eax, 0xbc614e
jmp 0x4603c3
mov dword [ebp - 0x1c], eax
jmp 0x46037b
mov dword [ebp - 4], 0xfffffffe
call fcn.004603d3
jmp 0x4603db
mov edx, 1
test edx, edx
je 0x460415
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x90]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x460407
jmp 0x460415
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x90]
mov dword [ebp - 0x1c], edx
jmp 0x4603db
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x94], 0
jmp 0x460439
mov ecx, dword [ebp - 0x94]
add ecx, 1
mov dword [ebp - 0x94], ecx
cmp dword [ebp - 0x94], 2
jge 0x460470
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x94]
mov dword [ebp - 0x1c], edx
jge 0x460458
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x46046e
mov dword [ebp - 0x1c], 0
jmp 0x46042a
mov dword [ebp - 4], 4
mov dword [ebp - 0x98], 0
jmp 0x460492
mov edx, dword [ebp - 0x98]
add edx, 1
mov dword [ebp - 0x98], edx
cmp dword [ebp - 0x98], 1
jge 0x4604cd
mov eax, dword [ebp - 0x98]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x4604c1
mov eax, dword [ebp - 0x98]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x4604c8
and eax, 0xbc614e
jmp 0x4604cb
mov dword [ebp - 0x1c], eax
jmp 0x460483
mov dword [ebp - 4], 0xfffffffe
call fcn.004604db
jmp 0x4604e3
mov edx, 1
test edx, edx
je 0x46051d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x46050f
jmp 0x46051d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x9c]
mov dword [ebp - 0x1c], edx
jmp 0x4604e3
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa0], 1
mov dword [ebp - 0xa4], 1
mov dword [ebp - 0xa8], 2
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb0], 0
jmp 0x460569
mov ecx, dword [ebp - 0xb0]
add ecx, 1
mov dword [ebp - 0xb0], ecx
cmp dword [ebp - 0xb0], 3
jge 0x4605aa
mov edx, dword [ebp - 0xa0]
add edx, dword [ebp - 0xa4]
mov dword [ebp - 0xa8], edx
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xa0], eax
mov ecx, dword [ebp - 0xa8]
mov dword [ebp - 0xa4], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xa8]
mov dword [ebp - 0x1c], edx
jmp 0x46055a
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xb4], 1
mov dword [ebp - 0xb8], 1
mov dword [ebp - 0xbc], 2
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xc4], 0
jmp 0x4605f6
mov ecx, dword [ebp - 0xc4]
add ecx, 1
mov dword [ebp - 0xc4], ecx
cmp dword [ebp - 0xc4], 0
jge 0x460637
mov edx, dword [ebp - 0xb4]
add edx, dword [ebp - 0xb8]
mov dword [ebp - 0xbc], edx
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0xb4], eax
mov ecx, dword [ebp - 0xbc]
mov dword [ebp - 0xb8], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xbc]
mov dword [ebp - 0x1c], edx
jmp 0x4605e7
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc8], 0
jmp 0x460658
mov ecx, dword [ebp - 0xc8]
add ecx, 1
mov dword [ebp - 0xc8], ecx
cmp dword [ebp - 0xc8], 1
jge 0x46068f
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xc8]
mov dword [ebp - 0x1c], edx
jge 0x460677
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x46068d
mov dword [ebp - 0x1c], 0
jmp 0x460649
mov dword [ebp - 4], 5
mov dword [ebp - 0xcc], 0
jmp 0x4606b1
mov edx, dword [ebp - 0xcc]
add edx, 1
mov dword [ebp - 0xcc], edx
cmp dword [ebp - 0xcc], 2
jge 0x4606ec
mov eax, dword [ebp - 0xcc]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x4606e0
mov eax, dword [ebp - 0xcc]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x4606e7
and eax, 0xbc614e
jmp 0x4606ea
mov dword [ebp - 0x1c], eax
jmp 0x4606a2
mov dword [ebp - 4], 0xfffffffe
call fcn.004606fa
jmp 0x460702
mov dword [ebp - 0xd0], 0
jmp 0x46071d
mov edx, dword [ebp - 0xd0]
add edx, 1
mov dword [ebp - 0xd0], edx
cmp dword [ebp - 0xd0], 4
jge 0x46076a
cmp dword [ebp - 0x1c], 0
jge 0x460734
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x46074a
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xd4], 0xfa
lea edx, [ebp - 0xd4]
push edx
lea eax, [ebp - 0x2d0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x46070e
mov dword [ebp - 0x2d4], 0
jmp 0x460785
mov ecx, dword [ebp - 0x2d4]
add ecx, 1
mov dword [ebp - 0x2d4], ecx
cmp dword [ebp - 0x2d4], 3
jge 0x46079c
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x2d4]
mov dword [ebp - 0x1c], edx
jmp 0x460776
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4607ae
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4607c6
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2d8], 0
jmp 0x4607e1
mov edx, dword [ebp - 0x2d8]
add edx, 1
mov dword [ebp - 0x2d8], edx
cmp dword [ebp - 0x2d8], 2
jge 0x4607f8
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x2d8]
mov dword [ebp - 0x1c], eax
jmp 0x4607d2
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46080a
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x460822
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 6
mov dword [ebp - 0x2dc], 0
jmp 0x460844
mov edx, dword [ebp - 0x2dc]
add edx, 1
mov dword [ebp - 0x2dc], edx
cmp dword [ebp - 0x2dc], 2
jge 0x46087f
mov eax, dword [ebp - 0x2dc]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x460873
mov eax, dword [ebp - 0x2dc]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x46087a
and eax, 0xbc614e
jmp 0x46087d
mov dword [ebp - 0x1c], eax
jmp 0x460835
mov dword [ebp - 4], 0xfffffffe
call fcn.0046088d
jmp 0x460895
mov dword [ebp - 4], 7
mov dword [ebp - 0x2e0], 0
jmp 0x4608b7
mov edx, dword [ebp - 0x2e0]
add edx, 1
mov dword [ebp - 0x2e0], edx
cmp dword [ebp - 0x2e0], 3
jge 0x4608f2
mov eax, dword [ebp - 0x2e0]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x4608e6
mov eax, dword [ebp - 0x2e0]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x4608ed
and eax, 0xbc614e
jmp 0x4608f0
mov dword [ebp - 0x1c], eax
jmp 0x4608a8
mov dword [ebp - 4], 0xfffffffe
call fcn.00460900
jmp 0x460908
mov dword [ebp - 0x2e4], 0
jmp 0x460923
mov edx, dword [ebp - 0x2e4]
add edx, 1
mov dword [ebp - 0x2e4], edx
cmp dword [ebp - 0x2e4], 3
jge 0x46093a
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x2e4]
mov dword [ebp - 0x1c], eax
jmp 0x460914
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x46094c
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x460964
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 8
mov dword [ebp - 0x2e8], 0
jmp 0x460986
mov edx, dword [ebp - 0x2e8]
add edx, 1
mov dword [ebp - 0x2e8], edx
cmp dword [ebp - 0x2e8], 3
jge 0x4609c1
mov eax, dword [ebp - 0x2e8]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x4609b5
mov eax, dword [ebp - 0x2e8]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x4609bc
and eax, 0xbc614e
jmp 0x4609bf
mov dword [ebp - 0x1c], eax
jmp 0x460977
mov dword [ebp - 4], 0xfffffffe
call fcn.004609cf
jmp 0x4609d7
mov dword [ebp - 0x2ec], 1
mov dword [ebp - 0x2f0], 1
mov dword [ebp - 0x2f4], 2
mov dword [ebp - 0x2f8], 0
mov dword [ebp - 0x2fc], 0
jmp 0x460a1a
mov edx, dword [ebp - 0x2fc]
add edx, 1
mov dword [ebp - 0x2fc], edx
cmp dword [ebp - 0x2fc], 0
jge 0x460a5b
mov eax, dword [ebp - 0x2ec]
add eax, dword [ebp - 0x2f0]
mov dword [ebp - 0x2f4], eax
mov ecx, dword [ebp - 0x2f0]
mov dword [ebp - 0x2ec], ecx
mov edx, dword [ebp - 0x2f4]
mov dword [ebp - 0x2f0], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x2f4]
mov dword [ebp - 0x1c], eax
jmp 0x460a0b
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x300], 0
jmp 0x460a7c
mov edx, dword [ebp - 0x300]
add edx, 1
mov dword [ebp - 0x300], edx
cmp dword [ebp - 0x300], 3
jge 0x460ab3
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x300]
mov dword [ebp - 0x1c], eax
jge 0x460a9b
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x460ab1
mov dword [ebp - 0x1c], 0
jmp 0x460a6d
mov dword [ebp - 0x304], 1
mov dword [ebp - 0x308], 1
mov dword [ebp - 0x30c], 2
mov dword [ebp - 0x310], 0
mov dword [ebp - 0x314], 0
jmp 0x460af6
mov edx, dword [ebp - 0x314]
add edx, 1
mov dword [ebp - 0x314], edx
cmp dword [ebp - 0x314], 3
jge 0x460b37
mov eax, dword [ebp - 0x304]
add eax, dword [ebp - 0x308]
mov dword [ebp - 0x30c], eax
mov ecx, dword [ebp - 0x308]
mov dword [ebp - 0x304], ecx
mov edx, dword [ebp - 0x30c]
mov dword [ebp - 0x308], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x30c]
mov dword [ebp - 0x1c], eax
jmp 0x460ae7
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x318], 0
jmp 0x460b5b
mov edx, dword [ebp - 0x318]
add edx, 1
mov dword [ebp - 0x318], edx
cmp dword [ebp - 0x318], 1
jge 0x460b92
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x318]
mov dword [ebp - 0x1c], eax
jge 0x460b7a
mov ecx, dword [ebp - 0x1c]
neg ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x460b90
mov dword [ebp - 0x1c], 0
jmp 0x460b4c
mov edx, 1
test edx, edx
je 0x460bcc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x31c], eax
mov eax, dword [ebp - 0x31c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x460bbe
jmp 0x460bcc
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x31c]
mov dword [ebp - 0x1c], edx
jmp 0x460b92
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x320], 0
jmp 0x460bf0
mov ecx, dword [ebp - 0x320]
add ecx, 1
mov dword [ebp - 0x320], ecx
cmp dword [ebp - 0x320], 0
jge 0x460c3d
cmp dword [ebp - 0x1c], 0
jge 0x460c07
mov edx, dword [ebp - 0x1c]
neg edx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x460c1d
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x324], 0xfa
lea edx, [ebp - 0x324]
push edx
lea eax, [ebp - 0x520]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x460be1
mov dword [ebp - 0x524], 0
jmp 0x460c58
mov ecx, dword [ebp - 0x524]
add ecx, 1
mov dword [ebp - 0x524], ecx
cmp dword [ebp - 0x524], 1
jge 0x460c6f
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x524]
mov dword [ebp - 0x1c], edx
jmp 0x460c49
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x460c81
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x460c99
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 9
mov dword [ebp - 0x528], 0
jmp 0x460cbb
mov edx, dword [ebp - 0x528]
add edx, 1
mov dword [ebp - 0x528], edx
cmp dword [ebp - 0x528], 4
jge 0x460cf6
mov eax, dword [ebp - 0x528]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x460cea
mov eax, dword [ebp - 0x528]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x460cf1
and eax, 0xbc614e
jmp 0x460cf4
mov dword [ebp - 0x1c], eax
jmp 0x460cac
mov dword [ebp - 4], 0xfffffffe
call fcn.00460d04
jmp 0x460d0c
mov edx, 1
test edx, edx
je 0x460d46
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x52c], eax
mov eax, dword [ebp - 0x52c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x460d38
jmp 0x460d46
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x52c]
mov dword [ebp - 0x1c], edx
jmp 0x460d0c
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x530], 0
jmp 0x460d71
mov ecx, dword [ebp - 0x530]
add ecx, 1
mov dword [ebp - 0x530], ecx
cmp dword [ebp - 0x530], 1
jge 0x460dac
mov eax, dword [ebp - 0x530]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x460da0
mov eax, dword [ebp - 0x530]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x460da7
and eax, 0xbc614e
jmp 0x460daa
mov dword [ebp - 0x1c], eax
jmp 0x460d62
mov dword [ebp - 4], 0xfffffffe
call fcn.00460dba
jmp 0x460dc2
mov dword [ebp - 0x534], 1
mov dword [ebp - 0x538], 1
mov dword [ebp - 0x53c], 2
mov dword [ebp - 0x540], 0
mov dword [ebp - 0x544], 0
jmp 0x460e05
mov edx, dword [ebp - 0x544]
add edx, 1
mov dword [ebp - 0x544], edx
cmp dword [ebp - 0x544], 1
jge 0x460e46
mov eax, dword [ebp - 0x534]
add eax, dword [ebp - 0x538]
mov dword [ebp - 0x53c], eax
mov ecx, dword [ebp - 0x538]
mov dword [ebp - 0x534], ecx
mov edx, dword [ebp - 0x53c]
mov dword [ebp - 0x538], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x53c]
mov dword [ebp - 0x1c], eax
jmp 0x460df6
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x548], 0
jmp 0x460e6a
mov edx, dword [ebp - 0x548]
add edx, 1
mov dword [ebp - 0x548], edx
cmp dword [ebp - 0x548], 2
jge 0x460eb7
cmp dword [ebp - 0x1c], 0
jge 0x460e81
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x460e97
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x54c], 0xfa
lea edx, [ebp - 0x54c]
push edx
lea eax, [ebp - 0x748]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x460e5b
mov dword [ebp - 4], 0xb
mov dword [ebp - 0x74c], 0
jmp 0x460ed9
mov ecx, dword [ebp - 0x74c]
add ecx, 1
mov dword [ebp - 0x74c], ecx
cmp dword [ebp - 0x74c], 2
jge 0x460f14
mov eax, dword [ebp - 0x74c]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x460f08
mov eax, dword [ebp - 0x74c]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x460f0f
and eax, 0xbc614e
jmp 0x460f12
mov dword [ebp - 0x1c], eax
jmp 0x460eca
mov dword [ebp - 4], 0xfffffffe
call fcn.00460f22
jmp 0x460f2a
mov dword [ebp - 0x750], 0
mov edx, 1
test edx, edx
je 0x460f7e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x754], eax
mov eax, dword [ebp - 0x754]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x460f60
jmp 0x460f7e
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x750]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x750]
add eax, 1
mov dword [ebp - 0x750], eax
jmp 0x460f34
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x758], 0
jmp 0x460f9f
mov edx, dword [ebp - 0x758]
add edx, 1
mov dword [ebp - 0x758], edx
cmp dword [ebp - 0x758], 4
jge 0x460fb6
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x758]
mov dword [ebp - 0x1c], eax
jmp 0x460f90
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x460fc8
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x460fe0
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x75c], 1
mov dword [ebp - 0x760], 1
mov dword [ebp - 0x764], 2
mov dword [ebp - 0x768], 0
mov dword [ebp - 0x76c], 0
jmp 0x461023
mov edx, dword [ebp - 0x76c]
add edx, 1
mov dword [ebp - 0x76c], edx
cmp dword [ebp - 0x76c], 2
jge 0x461064
mov eax, dword [ebp - 0x75c]
add eax, dword [ebp - 0x760]
mov dword [ebp - 0x764], eax
mov ecx, dword [ebp - 0x760]
mov dword [ebp - 0x75c], ecx
mov edx, dword [ebp - 0x764]
mov dword [ebp - 0x760], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x764]
mov dword [ebp - 0x1c], eax
jmp 0x461014
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x770], 0
jmp 0x461088
mov edx, dword [ebp - 0x770]
add edx, 1
mov dword [ebp - 0x770], edx
cmp dword [ebp - 0x770], 3
jge 0x46109f
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x770]
mov dword [ebp - 0x1c], eax
jmp 0x461079
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4610b1
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffffb
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4610c9
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x461103
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x774], eax
mov eax, dword [ebp - 0x774]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4610f5
jmp 0x461103
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x774]
mov dword [ebp - 0x1c], edx
jmp 0x4610c9
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x778], 1
mov dword [ebp - 0x77c], 1
mov dword [ebp - 0x780], 2
mov dword [ebp - 0x784], 0
mov dword [ebp - 0x788], 0
jmp 0x46114f
mov ecx, dword [ebp - 0x788]
add ecx, 1
mov dword [ebp - 0x788], ecx
cmp dword [ebp - 0x788], 1
jge 0x461190
mov edx, dword [ebp - 0x778]
add edx, dword [ebp - 0x77c]
mov dword [ebp - 0x780], edx
mov eax, dword [ebp - 0x77c]
mov dword [ebp - 0x778], eax
mov ecx, dword [ebp - 0x780]
mov dword [ebp - 0x77c], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x780]
mov dword [ebp - 0x1c], edx
jmp 0x461140
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x78c], 0
jmp 0x4611b4
mov ecx, dword [ebp - 0x78c]
add ecx, 1
mov dword [ebp - 0x78c], ecx
cmp dword [ebp - 0x78c], 2
jge 0x4611cb
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x78c]
mov dword [ebp - 0x1c], edx
jmp 0x4611a5
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4611dd
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4611f5
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x790], 0
jmp 0x461210
mov edx, dword [ebp - 0x790]
add edx, 1
mov dword [ebp - 0x790], edx
cmp dword [ebp - 0x790], 3
jge 0x46125d
cmp dword [ebp - 0x1c], 0
jge 0x461227
mov eax, dword [ebp - 0x1c]
neg eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
jne 0x46123d
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x794], 0xfa
lea edx, [ebp - 0x794]
push edx
lea eax, [ebp - 0x990]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x461201
mov dword [ebp - 0x994], 0
jmp 0x461278
mov ecx, dword [ebp - 0x994]
add ecx, 1
mov dword [ebp - 0x994], ecx
cmp dword [ebp - 0x994], 1
jge 0x46128f
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x994]
mov dword [ebp - 0x1c], edx
jmp 0x461269
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4612a1
mov eax, dword [ebp - 0x1c]
imul eax, eax, 0xfffffffb
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4612b9
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x998], 1
mov dword [ebp - 0x99c], 1
mov dword [ebp - 0x9a0], 2
mov dword [ebp - 0x9a4], 0
mov dword [ebp - 0x9a8], 0
jmp 0x4612fc
cmp dword [ebp - 0x9a8], 2
jge 0x46133d