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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x47ea48
push 0x40e3c0
mov eax, dword fs:[0]
push eax
add esp, 0xfffff65c
mov eax, dword [0x481398]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x58], 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 - 4], 0
mov dword [ebp - 0x20], 0
jmp 0x45e8a6
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xb
jge 0x45e8d8
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45e8cc
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45e8d3
and eax, 0xbc614e
jmp 0x45e8d6
mov dword [ebp - 0x1c], eax
jmp 0x45e89d
mov dword [ebp - 4], 0xfffffffe
call fcn.0045e8e6
jmp 0x45e8ee
mov edx, 1
test edx, edx
je 0x45e91f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45e914
jmp 0x45e91f
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edx
jmp 0x45e8ee
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], 0
mov ecx, 1
test ecx, ecx
je 0x45e96a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45e955
jmp 0x45e96a
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x28]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x28]
add eax, 1
mov dword [ebp - 0x28], eax
jmp 0x45e92f
mov ecx, dword [ebp - 0x1c]
add ecx, 0x16
mov dword [ebp - 0x1c], ecx
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 0x45e9a1
mov edx, dword [ebp - 0x40]
add edx, 1
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], 0xf
jge 0x45e9c7
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 0x45e998
mov ecx, dword [ebp - 0x1c]
add ecx, 0xf
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x44], 0
jmp 0x45e9e2
mov edx, dword [ebp - 0x44]
add edx, 1
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x44], 3
jge 0x45e9f3
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x44]
mov dword [ebp - 0x1c], eax
jmp 0x45e9d9
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45ea05
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 0x45ea1d
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x45ea4e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45ea43
jmp 0x45ea4e
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x48]
mov dword [ebp - 0x1c], edx
jmp 0x45ea1d
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x4c], 0
jmp 0x45ea69
mov ecx, dword [ebp - 0x4c]
add ecx, 1
mov dword [ebp - 0x4c], ecx
cmp dword [ebp - 0x4c], 0xc
jge 0x45ea7a
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x4c]
mov dword [ebp - 0x1c], edx
jmp 0x45ea60
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45ea8c
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 0x45eaa4
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x50], 0
jmp 0x45eab6
mov edx, dword [ebp - 0x50]
add edx, 1
mov dword [ebp - 0x50], edx
cmp dword [ebp - 0x50], 2
jge 0x45eafa
cmp dword [ebp - 0x1c], 0
jge 0x45eaca
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 0x45eae0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x54], 0xfa
lea edx, [ebp - 0x54]
push edx
lea eax, [ebp - 0x250]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45eaad
mov dword [ebp - 4], 1
mov dword [ebp - 0x254], 0
jmp 0x45eb1c
mov ecx, dword [ebp - 0x254]
add ecx, 1
mov dword [ebp - 0x254], ecx
cmp dword [ebp - 0x254], 0xd
jge 0x45eb57
mov eax, dword [ebp - 0x254]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45eb4b
mov eax, dword [ebp - 0x254]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45eb52
and eax, 0xbc614e
jmp 0x45eb55
mov dword [ebp - 0x1c], eax
jmp 0x45eb0d
mov dword [ebp - 4], 0xfffffffe
call fcn.0045eb65
jmp 0x45eb6d
mov dword [ebp - 0x258], 0
jmp 0x45eb88
mov edx, dword [ebp - 0x258]
add edx, 1
mov dword [ebp - 0x258], edx
cmp dword [ebp - 0x258], 5
jge 0x45ebd5
cmp dword [ebp - 0x1c], 0
jge 0x45eb9f
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 0x45ebb5
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x25c], 0xfa
lea edx, [ebp - 0x25c]
push edx
lea eax, [ebp - 0x458]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45eb79
mov dword [ebp - 0x45c], 0
jmp 0x45ebf0
mov ecx, dword [ebp - 0x45c]
add ecx, 1
mov dword [ebp - 0x45c], ecx
cmp dword [ebp - 0x45c], 3
jge 0x45ec07
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x45c]
mov dword [ebp - 0x1c], edx
jmp 0x45ebe1
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45ec19
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 0x45ec31
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x45ec6b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x460]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45ec5d
jmp 0x45ec6b
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x460]
mov dword [ebp - 0x1c], edx
jmp 0x45ec31
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x464], 1
mov dword [ebp - 0x468], 1
mov dword [ebp - 0x46c], 2
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x474], 0
jmp 0x45ecb7
mov ecx, dword [ebp - 0x474]
add ecx, 1
mov dword [ebp - 0x474], ecx
cmp dword [ebp - 0x474], 1
jge 0x45ecf8
mov edx, dword [ebp - 0x464]
add edx, dword [ebp - 0x468]
mov dword [ebp - 0x46c], edx
mov eax, dword [ebp - 0x468]
mov dword [ebp - 0x464], eax
mov ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x468], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x46c]
mov dword [ebp - 0x1c], edx
jmp 0x45eca8
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x478], 0
jmp 0x45ed1c
mov ecx, dword [ebp - 0x478]
add ecx, 1
mov dword [ebp - 0x478], ecx
cmp dword [ebp - 0x478], 0
jge 0x45ed53
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x478]
mov dword [ebp - 0x1c], edx
jge 0x45ed3b
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 0x45ed51
mov dword [ebp - 0x1c], 0
jmp 0x45ed0d
mov edx, 1
test edx, edx
je 0x45ed8d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x47c], eax
mov eax, dword [ebp - 0x47c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45ed7f
jmp 0x45ed8d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x47c]
mov dword [ebp - 0x1c], edx
jmp 0x45ed53
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x480], 0
jmp 0x45edb1
mov ecx, dword [ebp - 0x480]
add ecx, 1
mov dword [ebp - 0x480], ecx
cmp dword [ebp - 0x480], 0
jge 0x45ede8
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x480]
mov dword [ebp - 0x1c], edx
jge 0x45edd0
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 0x45ede6
mov dword [ebp - 0x1c], 0
jmp 0x45eda2
mov dword [ebp - 0x484], 0
mov edx, 1
test edx, edx
je 0x45ee3c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x488], eax
mov eax, dword [ebp - 0x488]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45ee1e
jmp 0x45ee3c
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x484]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x484]
add eax, 1
mov dword [ebp - 0x484], eax
jmp 0x45edf2
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 2
mov dword [ebp - 0x48c], 0
jmp 0x45ee67
mov edx, dword [ebp - 0x48c]
add edx, 1
mov dword [ebp - 0x48c], edx
cmp dword [ebp - 0x48c], 3
jge 0x45eea2
mov eax, dword [ebp - 0x48c]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45ee96
mov eax, dword [ebp - 0x48c]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45ee9d
and eax, 0xbc614e
jmp 0x45eea0
mov dword [ebp - 0x1c], eax
jmp 0x45ee58
mov dword [ebp - 4], 0xfffffffe
call fcn.0045eeb0
jmp 0x45eeb8
mov dword [ebp - 0x490], 0
jmp 0x45eed3
mov edx, dword [ebp - 0x490]
add edx, 1
mov dword [ebp - 0x490], edx
cmp dword [ebp - 0x490], 6
jge 0x45ef0a
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x490]
mov dword [ebp - 0x1c], eax
jge 0x45eef2
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 0x45ef08
mov dword [ebp - 0x1c], 0
jmp 0x45eec4
mov edx, 1
test edx, edx
je 0x45ef44
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x494], eax
mov eax, dword [ebp - 0x494]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45ef36
jmp 0x45ef44
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x494]
mov dword [ebp - 0x1c], edx
jmp 0x45ef0a
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x498], 0
jmp 0x45ef68
mov ecx, dword [ebp - 0x498]
add ecx, 1
mov dword [ebp - 0x498], ecx
cmp dword [ebp - 0x498], 8
jge 0x45ef9f
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x498]
mov dword [ebp - 0x1c], edx
jge 0x45ef87
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 0x45ef9d
mov dword [ebp - 0x1c], 0
jmp 0x45ef59
mov dword [ebp - 0x49c], 0
mov edx, 1
test edx, edx
je 0x45eff3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x4a0], eax
mov eax, dword [ebp - 0x4a0]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45efd5
jmp 0x45eff3
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x49c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x49c]
add eax, 1
mov dword [ebp - 0x49c], eax
jmp 0x45efa9
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x45f033
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x4a4], eax
mov eax, dword [ebp - 0x4a4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45f025
jmp 0x45f033
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x4a4]
mov dword [ebp - 0x1c], edx
jmp 0x45eff9
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x4a8], 0
jmp 0x45f057
mov ecx, dword [ebp - 0x4a8]
add ecx, 1
mov dword [ebp - 0x4a8], ecx
cmp dword [ebp - 0x4a8], 5
jge 0x45f06e
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x4a8]
mov dword [ebp - 0x1c], edx
jmp 0x45f048
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45f080
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 0x45f098
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x4ac], 1
mov dword [ebp - 0x4b0], 1
mov dword [ebp - 0x4b4], 2
mov dword [ebp - 0x4b8], 0
mov dword [ebp - 0x4bc], 0
jmp 0x45f0db
mov edx, dword [ebp - 0x4bc]
add edx, 1
mov dword [ebp - 0x4bc], edx
cmp dword [ebp - 0x4bc], 3
jge 0x45f11c
mov eax, dword [ebp - 0x4ac]
add eax, dword [ebp - 0x4b0]
mov dword [ebp - 0x4b4], eax
mov ecx, dword [ebp - 0x4b0]
mov dword [ebp - 0x4ac], ecx
mov edx, dword [ebp - 0x4b4]
mov dword [ebp - 0x4b0], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x4b4]
mov dword [ebp - 0x1c], eax
jmp 0x45f0cc
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x4c0], 0
jmp 0x45f140
mov edx, dword [ebp - 0x4c0]
add edx, 1
mov dword [ebp - 0x4c0], edx
cmp dword [ebp - 0x4c0], 4
jge 0x45f177
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x4c0]
mov dword [ebp - 0x1c], eax
jge 0x45f15f
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 0x45f175
mov dword [ebp - 0x1c], 0
jmp 0x45f131
mov edx, 1
test edx, edx
je 0x45f1b1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x4c4], eax
mov eax, dword [ebp - 0x4c4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45f1a3
jmp 0x45f1b1
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x4c4]
mov dword [ebp - 0x1c], edx
jmp 0x45f177
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x4c8], 0
jmp 0x45f1d5
mov ecx, dword [ebp - 0x4c8]
add ecx, 1
mov dword [ebp - 0x4c8], ecx
cmp dword [ebp - 0x4c8], 2
jge 0x45f20c
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x4c8]
mov dword [ebp - 0x1c], edx
jge 0x45f1f4
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 0x45f20a
mov dword [ebp - 0x1c], 0
jmp 0x45f1c6
mov dword [ebp - 0x4cc], 1
mov dword [ebp - 0x4d0], 1
mov dword [ebp - 0x4d4], 2
mov dword [ebp - 0x4d8], 0
mov dword [ebp - 0x4dc], 0
jmp 0x45f24f
mov edx, dword [ebp - 0x4dc]
add edx, 1
mov dword [ebp - 0x4dc], edx
cmp dword [ebp - 0x4dc], 0
jge 0x45f290
mov eax, dword [ebp - 0x4cc]
add eax, dword [ebp - 0x4d0]
mov dword [ebp - 0x4d4], eax
mov ecx, dword [ebp - 0x4d0]
mov dword [ebp - 0x4cc], ecx
mov edx, dword [ebp - 0x4d4]
mov dword [ebp - 0x4d0], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x1c], eax
jmp 0x45f240
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x4e0], 1
mov dword [ebp - 0x4e4], 1
mov dword [ebp - 0x4e8], 2
mov dword [ebp - 0x4ec], 0
mov dword [ebp - 0x4f0], 0
jmp 0x45f2d9
mov edx, dword [ebp - 0x4f0]
add edx, 1
mov dword [ebp - 0x4f0], edx
cmp dword [ebp - 0x4f0], 2
jge 0x45f31a
mov eax, dword [ebp - 0x4e0]
add eax, dword [ebp - 0x4e4]
mov dword [ebp - 0x4e8], eax
mov ecx, dword [ebp - 0x4e4]
mov dword [ebp - 0x4e0], ecx
mov edx, dword [ebp - 0x4e8]
mov dword [ebp - 0x4e4], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x4e8]
mov dword [ebp - 0x1c], eax
jmp 0x45f2ca
mov ecx, dword [ebp - 0x1c]
add ecx, 2
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x4f4], 0
jmp 0x45f33e
mov edx, dword [ebp - 0x4f4]
add edx, 1
mov dword [ebp - 0x4f4], edx
cmp dword [ebp - 0x4f4], 4
jge 0x45f375
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x4f4]
mov dword [ebp - 0x1c], eax
jge 0x45f35d
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 0x45f373
mov dword [ebp - 0x1c], 0
jmp 0x45f32f
mov dword [ebp - 0x4f8], 0
jmp 0x45f390
mov edx, dword [ebp - 0x4f8]
add edx, 1
mov dword [ebp - 0x4f8], edx
cmp dword [ebp - 0x4f8], 4
jge 0x45f3dd
cmp dword [ebp - 0x1c], 0
jge 0x45f3a7
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 0x45f3bd
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x4fc], 0xfa
lea edx, [ebp - 0x4fc]
push edx
lea eax, [ebp - 0x6f8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45f381
mov dword [ebp - 0x6fc], 0
mov ecx, 1
test ecx, ecx
je 0x45f431
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x700], eax
mov eax, dword [ebp - 0x700]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45f413
jmp 0x45f431
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x6fc]
add eax, 1
mov dword [ebp - 0x6fc], eax
jmp 0x45f3e7
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x45f474
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x704], eax
mov eax, dword [ebp - 0x704]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45f466
jmp 0x45f474
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x704]
mov dword [ebp - 0x1c], edx
jmp 0x45f43a
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0x708], 0
jmp 0x45f49f
mov ecx, dword [ebp - 0x708]
add ecx, 1
mov dword [ebp - 0x708], ecx
cmp dword [ebp - 0x708], 1
jge 0x45f4da
mov eax, dword [ebp - 0x708]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45f4ce
mov eax, dword [ebp - 0x708]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45f4d5
and eax, 0xbc614e
jmp 0x45f4d8
mov dword [ebp - 0x1c], eax
jmp 0x45f490
mov dword [ebp - 4], 0xfffffffe
call fcn.0045f4e8
jmp 0x45f4f0
mov dword [ebp - 0x70c], 0
jmp 0x45f50b
mov edx, dword [ebp - 0x70c]
add edx, 1
mov dword [ebp - 0x70c], edx
cmp dword [ebp - 0x70c], 1
jge 0x45f542
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x70c]
mov dword [ebp - 0x1c], eax
jge 0x45f52a
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 0x45f540
mov dword [ebp - 0x1c], 0
jmp 0x45f4fc
mov dword [ebp - 0x710], 1
mov dword [ebp - 0x714], 1
mov dword [ebp - 0x718], 2
mov dword [ebp - 0x71c], 0
mov dword [ebp - 0x720], 0
jmp 0x45f585
mov edx, dword [ebp - 0x720]
add edx, 1
mov dword [ebp - 0x720], edx
cmp dword [ebp - 0x720], 0
jge 0x45f5c6
mov eax, dword [ebp - 0x710]
add eax, dword [ebp - 0x714]
mov dword [ebp - 0x718], eax
mov ecx, dword [ebp - 0x714]
mov dword [ebp - 0x710], ecx
mov edx, dword [ebp - 0x718]
mov dword [ebp - 0x714], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x718]
mov dword [ebp - 0x1c], eax
jmp 0x45f576
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x45f606
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x724], eax
mov eax, dword [ebp - 0x724]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45f5f8
jmp 0x45f606
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x724]
mov dword [ebp - 0x1c], edx
jmp 0x45f5cc
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x728], 0
jmp 0x45f62a
mov ecx, dword [ebp - 0x728]
add ecx, 1
mov dword [ebp - 0x728], ecx
cmp dword [ebp - 0x728], 2
jge 0x45f661
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x728]
mov dword [ebp - 0x1c], edx
jge 0x45f649
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 0x45f65f
mov dword [ebp - 0x1c], 0
jmp 0x45f61b
mov dword [ebp - 0x72c], 0
jmp 0x45f67c
mov edx, dword [ebp - 0x72c]
add edx, 1
mov dword [ebp - 0x72c], edx
cmp dword [ebp - 0x72c], 2
jge 0x45f693
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x72c]
mov dword [ebp - 0x1c], eax
jmp 0x45f66d
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45f6a5
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 0x45f6bd
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x730], 1
mov dword [ebp - 0x734], 1
mov dword [ebp - 0x738], 2
mov dword [ebp - 0x73c], 0
mov dword [ebp - 0x740], 0
jmp 0x45f700
mov edx, dword [ebp - 0x740]
add edx, 1
mov dword [ebp - 0x740], edx
cmp dword [ebp - 0x740], 1
jge 0x45f741
mov eax, dword [ebp - 0x730]
add eax, dword [ebp - 0x734]
mov dword [ebp - 0x738], eax
mov ecx, dword [ebp - 0x734]
mov dword [ebp - 0x730], ecx
mov edx, dword [ebp - 0x738]
mov dword [ebp - 0x734], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x738]
mov dword [ebp - 0x1c], eax
jmp 0x45f6f1
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x744], 1
mov dword [ebp - 0x748], 1
mov dword [ebp - 0x74c], 2
mov dword [ebp - 0x750], 0
mov dword [ebp - 0x754], 0
jmp 0x45f78d
mov edx, dword [ebp - 0x754]
add edx, 1
mov dword [ebp - 0x754], edx
cmp dword [ebp - 0x754], 3
jge 0x45f7ce
mov eax, dword [ebp - 0x744]
add eax, dword [ebp - 0x748]
mov dword [ebp - 0x74c], eax
mov ecx, dword [ebp - 0x748]
mov dword [ebp - 0x744], ecx
mov edx, dword [ebp - 0x74c]
mov dword [ebp - 0x748], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x74c]
mov dword [ebp - 0x1c], eax
jmp 0x45f77e
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x758], 0
jmp 0x45f7f2
mov edx, dword [ebp - 0x758]
add edx, 1
mov dword [ebp - 0x758], edx
cmp dword [ebp - 0x758], 0
jge 0x45f83f
cmp dword [ebp - 0x1c], 0
jge 0x45f809
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 0x45f81f
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x75c], 0xfa
lea edx, [ebp - 0x75c]
push edx
lea eax, [ebp - 0x958]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45f7e3
mov ecx, 1
test ecx, ecx
je 0x45f879
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x95c], eax
mov eax, dword [ebp - 0x95c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45f86b
jmp 0x45f879
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x95c]
mov dword [ebp - 0x1c], edx
jmp 0x45f83f
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x45f8bc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x960], eax
mov eax, dword [ebp - 0x960]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45f8ae
jmp 0x45f8bc
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x960]
mov dword [ebp - 0x1c], edx
jmp 0x45f882
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x964], 0
mov ecx, 1
test ecx, ecx
je 0x45f916
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x968], eax
mov eax, dword [ebp - 0x968]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45f8f8
jmp 0x45f916
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x964]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x964]
add eax, 1
mov dword [ebp - 0x964], eax
jmp 0x45f8cc
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x96c], 0
mov edx, 1
test edx, edx
je 0x45f973
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x970], eax
mov eax, dword [ebp - 0x970]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45f955
jmp 0x45f973
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x96c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x96c]
add eax, 1
mov dword [ebp - 0x96c], eax
jmp 0x45f929
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 4
mov dword [ebp - 0x974], 0
jmp 0x45f99e
mov edx, dword [ebp - 0x974]
add edx, 1
mov dword [ebp - 0x974], edx
cmp dword [ebp - 0x974], 4
jge 0x45f9d9
mov eax, dword [ebp - 0x974]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45f9cd
mov eax, dword [ebp - 0x974]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45f9d4
and eax, 0xbc614e
jmp 0x45f9d7
mov dword [ebp - 0x1c], eax
jmp 0x45f98f
mov dword [ebp - 4], 0xfffffffe
call fcn.0045f9e7
jmp 0x45f9ef
mov dword [ebp - 0x978], 0
mov edx, 1
test edx, edx
je 0x45fa43
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x97c], eax
mov eax, dword [ebp - 0x97c]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45fa25
jmp 0x45fa43
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x978]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x978]
add eax, 1
mov dword [ebp - 0x978], eax
jmp 0x45f9f9
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x980], 0
jmp 0x45fa64
mov edx, dword [ebp - 0x980]
add edx, 1
mov dword [ebp - 0x980], edx
cmp dword [ebp - 0x980], 2
jge 0x45fa9b
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x980]
mov dword [ebp - 0x1c], eax
jge 0x45fa83
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 0x45fa99
mov dword [ebp - 0x1c], 0
jmp 0x45fa55
mov dword [ebp - 0x984], 0
jmp 0x45fab6
mov edx, dword [ebp - 0x984]
add edx, 1
mov dword [ebp - 0x984], edx
cmp dword [ebp - 0x984], 0
jge 0x45faed
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x984]
mov dword [ebp - 0x1c], eax
jge 0x45fad5
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 0x45faeb
mov dword [ebp - 0x1c], 0
jmp 0x45faa7
mov dword [ebp - 4], 5
mov dword [ebp - 0x988], 0
jmp 0x45fb0f
mov edx, dword [ebp - 0x988]
add edx, 1
mov dword [ebp - 0x988], edx
cmp dword [ebp - 0x988], 4
jge 0x45fb4a
mov eax, dword [ebp - 0x988]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45fb3e
mov eax, dword [ebp - 0x988]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45fb45
and eax, 0xbc614e
jmp 0x45fb48
mov dword [ebp - 0x1c], eax
jmp 0x45fb00
mov dword [ebp - 4], 0xfffffffe
call fcn.0045fb58
jmp 0x45fb60
mov dword [ebp - 0x98c], 0
jmp 0x45fb7b
mov edx, dword [ebp - 0x98c]
add edx, 1
mov dword [ebp - 0x98c], edx
cmp dword [ebp - 0x98c], 2
jge 0x45fb92
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x98c]
mov dword [ebp - 0x1c], eax
jmp 0x45fb6c
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45fba4
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 0x45fbbc
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 6
mov dword [ebp - 0x990], 0
jmp 0x45fbde
mov edx, dword [ebp - 0x990]
add edx, 1
mov dword [ebp - 0x990], edx
cmp dword [ebp - 0x990], 1
jge 0x45fc19
mov eax, dword [ebp - 0x990]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45fc0d
mov eax, dword [ebp - 0x990]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45fc14
and eax, 0xbc614e
jmp 0x45fc17
mov dword [ebp - 0x1c], eax
jmp 0x45fbcf
mov dword [ebp - 4], 0xfffffffe
call fcn.0045fc27
jmp 0x45fc2f
mov edx, 1
test edx, edx
je 0x45fc69
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x994], eax
mov eax, dword [ebp - 0x994]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45fc5b
jmp 0x45fc69
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x994]
mov dword [ebp - 0x1c], edx
jmp 0x45fc2f
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x998], 0
jmp 0x45fc8d
mov ecx, dword [ebp - 0x998]
add ecx, 1
mov dword [ebp - 0x998], ecx
cmp dword [ebp - 0x998], 2
jge 0x45fcc4
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x998]
mov dword [ebp - 0x1c], edx
jge 0x45fcac
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 0x45fcc2
mov dword [ebp - 0x1c], 0
jmp 0x45fc7e
mov dword [ebp - 0x99c], 0
jmp 0x45fcdf
mov edx, dword [ebp - 0x99c]
add edx, 1
mov dword [ebp - 0x99c], edx
cmp dword [ebp - 0x99c], 3
jge 0x45fcf6
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x99c]
mov dword [ebp - 0x1c], eax
jmp 0x45fcd0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45fd08
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 0x45fd20
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x9a0], 0
jmp 0x45fd3b
mov edx, dword [ebp - 0x9a0]
add edx, 1
mov dword [ebp - 0x9a0], edx
cmp dword [ebp - 0x9a0], 2
jge 0x45fd52
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x9a0]
mov dword [ebp - 0x1c], eax
jmp 0x45fd2c
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45fd64
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 0x45fd7c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x45fdb6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x9a4], eax
mov eax, dword [ebp - 0x9a4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45fda8
jmp 0x45fdb6
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x9a4]
mov dword [ebp - 0x1c], edx
jmp 0x45fd7c
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x9a8], 0
mov ecx, 1
test ecx, ecx
je 0x45fe10
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x9ac], eax
mov eax, dword [ebp - 0x9ac]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45fdf2
jmp 0x45fe10
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x9a8]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x9a8]
add eax, 1
mov dword [ebp - 0x9a8], eax
jmp 0x45fdc6
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov edx, 1
test edx, edx
je 0x45fe53
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x9b0], eax
mov eax, dword [ebp - 0x9b0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45fe45
jmp 0x45fe53
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x9b0]
mov dword [ebp - 0x1c], edx
jmp 0x45fe19
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x45fe96
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x9b4], eax
mov eax, dword [ebp - 0x9b4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45fe88
jmp 0x45fe96
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x9b4]
mov dword [ebp - 0x1c], edx
jmp 0x45fe5c
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x58]
xor ecx, ebp
call fcn.00408b45
mov esp, ebp
pop ebp
ret