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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x47e918
push 0x40e3c0
mov eax, dword fs:[0]
push eax
add esp, 0xfffff0f8
mov eax, dword [0x481398]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x4c], 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], 1
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x28], 2
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
jmp 0x45b2eb
mov eax, dword [ebp - 0x30]
add eax, 1
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0x2b
jge 0x45b311
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x1c]
add ecx, dword [ebp - 0x28]
mov dword [ebp - 0x1c], ecx
jmp 0x45b2e2
mov edx, dword [ebp - 0x1c]
add edx, 0x2b
mov dword [ebp - 0x1c], edx
mov dword [ebp - 4], 0
mov dword [ebp - 0x34], 0
jmp 0x45b333
mov eax, dword [ebp - 0x34]
add eax, 1
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 4
jge 0x45b365
mov eax, dword [ebp - 0x34]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45b359
mov eax, dword [ebp - 0x34]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45b360
and eax, 0xbc614e
jmp 0x45b363
mov dword [ebp - 0x1c], eax
jmp 0x45b32a
mov dword [ebp - 4], 0xfffffffe
call fcn.0045b373
jmp 0x45b37b
mov dword [ebp - 0x38], 0
mov edx, 1
test edx, edx
je 0x45b3bd
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45b3a8
jmp 0x45b3bd
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x38]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x38]
add eax, 1
mov dword [ebp - 0x38], eax
jmp 0x45b382
mov ecx, dword [ebp - 0x1c]
add ecx, 0x14
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], 1
mov dword [ebp - 0x40], 0
jmp 0x45b3df
mov edx, dword [ebp - 0x40]
add edx, 1
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], 0x10
jge 0x45b411
mov eax, dword [ebp - 0x40]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45b405
mov eax, dword [ebp - 0x40]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45b40c
and eax, 0xbc614e
jmp 0x45b40f
mov dword [ebp - 0x1c], eax
jmp 0x45b3d6
mov dword [ebp - 4], 0xfffffffe
call fcn.0045b41f
jmp 0x45b427
mov dword [ebp - 0x44], 0
jmp 0x45b439
mov edx, dword [ebp - 0x44]
add edx, 1
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x44], 9
jge 0x45b47d
cmp dword [ebp - 0x1c], 0
jge 0x45b44d
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 0x45b463
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x48], 0xfa
lea edx, [ebp - 0x48]
push edx
lea eax, [ebp - 0x248]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45b430
mov ecx, 1
test ecx, ecx
je 0x45b4b7
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x24c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45b4a9
jmp 0x45b4b7
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x24c]
mov dword [ebp - 0x1c], edx
jmp 0x45b47d
mov eax, dword [ebp - 0x1c]
add eax, 0xc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0x250], 0
jmp 0x45b4e2
mov ecx, dword [ebp - 0x250]
add ecx, 1
mov dword [ebp - 0x250], ecx
cmp dword [ebp - 0x250], 0xc
jge 0x45b51d
mov eax, dword [ebp - 0x250]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45b511
mov eax, dword [ebp - 0x250]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45b518
and eax, 0xbc614e
jmp 0x45b51b
mov dword [ebp - 0x1c], eax
jmp 0x45b4d3
mov dword [ebp - 4], 0xfffffffe
call fcn.0045b52b
jmp 0x45b533
mov dword [ebp - 4], 3
mov dword [ebp - 0x254], 0
jmp 0x45b555
mov edx, dword [ebp - 0x254]
add edx, 1
mov dword [ebp - 0x254], edx
cmp dword [ebp - 0x254], 0
jge 0x45b590
mov eax, dword [ebp - 0x254]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45b584
mov eax, dword [ebp - 0x254]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45b58b
and eax, 0xbc614e
jmp 0x45b58e
mov dword [ebp - 0x1c], eax
jmp 0x45b546
mov dword [ebp - 4], 0xfffffffe
call fcn.0045b59e
jmp 0x45b5a6
mov dword [ebp - 0x258], 0
jmp 0x45b5c1
mov edx, dword [ebp - 0x258]
add edx, 1
mov dword [ebp - 0x258], edx
cmp dword [ebp - 0x258], 0x10
jge 0x45b5d8
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x258]
mov dword [ebp - 0x1c], eax
jmp 0x45b5b2
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45b5ea
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 0x45b602
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x25c], 1
mov dword [ebp - 0x260], 1
mov dword [ebp - 0x264], 2
mov dword [ebp - 0x268], 0
mov dword [ebp - 0x26c], 0
jmp 0x45b645
mov edx, dword [ebp - 0x26c]
add edx, 1
mov dword [ebp - 0x26c], edx
cmp dword [ebp - 0x26c], 0xf
jge 0x45b686
mov eax, dword [ebp - 0x25c]
add eax, dword [ebp - 0x260]
mov dword [ebp - 0x264], eax
mov ecx, dword [ebp - 0x260]
mov dword [ebp - 0x25c], ecx
mov edx, dword [ebp - 0x264]
mov dword [ebp - 0x260], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x264]
mov dword [ebp - 0x1c], eax
jmp 0x45b636
mov ecx, dword [ebp - 0x1c]
add ecx, 0xf
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x270], 0
jmp 0x45b6aa
mov edx, dword [ebp - 0x270]
add edx, 1
mov dword [ebp - 0x270], edx
cmp dword [ebp - 0x270], 0xc
jge 0x45b6f7
cmp dword [ebp - 0x1c], 0
jge 0x45b6c1
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 0x45b6d7
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x274], 0xfa
lea edx, [ebp - 0x274]
push edx
lea eax, [ebp - 0x470]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45b69b
mov dword [ebp - 0x474], 0
jmp 0x45b712
mov ecx, dword [ebp - 0x474]
add ecx, 1
mov dword [ebp - 0x474], ecx
cmp dword [ebp - 0x474], 0xe
jge 0x45b729
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x474]
mov dword [ebp - 0x1c], edx
jmp 0x45b703
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45b73b
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 0x45b753
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x478], 0
jmp 0x45b76e
mov edx, dword [ebp - 0x478]
add edx, 1
mov dword [ebp - 0x478], edx
cmp dword [ebp - 0x478], 0xc
jge 0x45b785
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x478]
mov dword [ebp - 0x1c], eax
jmp 0x45b75f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45b797
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 0x45b7af
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x47c], 0
mov edx, 1
test edx, edx
je 0x45b803
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x480], eax
mov eax, dword [ebp - 0x480]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45b7e5
jmp 0x45b803
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x47c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x47c]
add eax, 1
mov dword [ebp - 0x47c], eax
jmp 0x45b7b9
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x484], 1
mov dword [ebp - 0x488], 1
mov dword [ebp - 0x48c], 2
mov dword [ebp - 0x490], 0
mov dword [ebp - 0x494], 0
jmp 0x45b84f
mov edx, dword [ebp - 0x494]
add edx, 1
mov dword [ebp - 0x494], edx
cmp dword [ebp - 0x494], 3
jge 0x45b890
mov eax, dword [ebp - 0x484]
add eax, dword [ebp - 0x488]
mov dword [ebp - 0x48c], eax
mov ecx, dword [ebp - 0x488]
mov dword [ebp - 0x484], ecx
mov edx, dword [ebp - 0x48c]
mov dword [ebp - 0x488], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x48c]
mov dword [ebp - 0x1c], eax
jmp 0x45b840
mov ecx, dword [ebp - 0x1c]
add ecx, 3
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x498], 0
jmp 0x45b8b4
mov edx, dword [ebp - 0x498]
add edx, 1
mov dword [ebp - 0x498], edx
cmp dword [ebp - 0x498], 3
jge 0x45b901
cmp dword [ebp - 0x1c], 0
jge 0x45b8cb
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 0x45b8e1
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x49c], 0xfa
lea edx, [ebp - 0x49c]
push edx
lea eax, [ebp - 0x698]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45b8a5
mov ecx, 1
test ecx, ecx
je 0x45b93b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x69c], eax
mov eax, dword [ebp - 0x69c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45b92d
jmp 0x45b93b
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x69c]
mov dword [ebp - 0x1c], edx
jmp 0x45b901
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x6a0], 1
mov dword [ebp - 0x6a4], 1
mov dword [ebp - 0x6a8], 2
mov dword [ebp - 0x6ac], 0
mov dword [ebp - 0x6b0], 0
jmp 0x45b987
mov ecx, dword [ebp - 0x6b0]
add ecx, 1
mov dword [ebp - 0x6b0], ecx
cmp dword [ebp - 0x6b0], 7
jge 0x45b9c8
mov edx, dword [ebp - 0x6a0]
add edx, dword [ebp - 0x6a4]
mov dword [ebp - 0x6a8], edx
mov eax, dword [ebp - 0x6a4]
mov dword [ebp - 0x6a0], eax
mov ecx, dword [ebp - 0x6a8]
mov dword [ebp - 0x6a4], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x6a8]
mov dword [ebp - 0x1c], edx
jmp 0x45b978
mov eax, dword [ebp - 0x1c]
add eax, 7
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x6b4], 0
jmp 0x45b9ec
mov ecx, dword [ebp - 0x6b4]
add ecx, 1
mov dword [ebp - 0x6b4], ecx
cmp dword [ebp - 0x6b4], 3
jge 0x45ba39
cmp dword [ebp - 0x1c], 0
jge 0x45ba03
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 0x45ba19
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x6b8], 0xfa
lea edx, [ebp - 0x6b8]
push edx
lea eax, [ebp - 0x8b0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45b9dd
mov ecx, 1
test ecx, ecx
je 0x45ba73
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x8b4], eax
mov eax, dword [ebp - 0x8b4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45ba65
jmp 0x45ba73
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x8b4]
mov dword [ebp - 0x1c], edx
jmp 0x45ba39
mov eax, dword [ebp - 0x1c]
add eax, 5
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 4
mov dword [ebp - 0x8b8], 0
jmp 0x45ba9e
mov ecx, dword [ebp - 0x8b8]
add ecx, 1
mov dword [ebp - 0x8b8], ecx
cmp dword [ebp - 0x8b8], 5
jge 0x45bad9
mov eax, dword [ebp - 0x8b8]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45bacd
mov eax, dword [ebp - 0x8b8]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45bad4
and eax, 0xbc614e
jmp 0x45bad7
mov dword [ebp - 0x1c], eax
jmp 0x45ba8f
mov dword [ebp - 4], 0xfffffffe
call fcn.0045bae7
jmp 0x45baef
mov dword [ebp - 0x8bc], 0
mov edx, 1
test edx, edx
je 0x45bb43
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x8c0], eax
mov eax, dword [ebp - 0x8c0]
xor edx, edx
mov ecx, 3
div ecx
test edx, edx
jne 0x45bb25
jmp 0x45bb43
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 0x8bc]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x8bc]
add eax, 1
mov dword [ebp - 0x8bc], eax
jmp 0x45baf9
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x8c4], 0
jmp 0x45bb64
mov edx, dword [ebp - 0x8c4]
add edx, 1
mov dword [ebp - 0x8c4], edx
cmp dword [ebp - 0x8c4], 3
jge 0x45bb7b
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x8c4]
mov dword [ebp - 0x1c], eax
jmp 0x45bb55
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45bb8d
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 0x45bba5
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0x8c8], 0
jmp 0x45bbc7
mov edx, dword [ebp - 0x8c8]
add edx, 1
mov dword [ebp - 0x8c8], edx
cmp dword [ebp - 0x8c8], 3
jge 0x45bc02
mov eax, dword [ebp - 0x8c8]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45bbf6
mov eax, dword [ebp - 0x8c8]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45bbfd
and eax, 0xbc614e
jmp 0x45bc00
mov dword [ebp - 0x1c], eax
jmp 0x45bbb8
mov dword [ebp - 4], 0xfffffffe
call fcn.0045bc10
jmp 0x45bc18
mov dword [ebp - 4], 6
mov dword [ebp - 0x8cc], 0
jmp 0x45bc3a
mov edx, dword [ebp - 0x8cc]
add edx, 1
mov dword [ebp - 0x8cc], edx
cmp dword [ebp - 0x8cc], 2
jge 0x45bc75
mov eax, dword [ebp - 0x8cc]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45bc69
mov eax, dword [ebp - 0x8cc]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45bc70
and eax, 0xbc614e
jmp 0x45bc73
mov dword [ebp - 0x1c], eax
jmp 0x45bc2b
mov dword [ebp - 4], 0xfffffffe
call fcn.0045bc83
jmp 0x45bc8b
mov edx, 1
test edx, edx
je 0x45bcc5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x8d0], eax
mov eax, dword [ebp - 0x8d0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45bcb7
jmp 0x45bcc5
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x8d0]
mov dword [ebp - 0x1c], edx
jmp 0x45bc8b
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x8d4], 0
jmp 0x45bce9
mov ecx, dword [ebp - 0x8d4]
add ecx, 1
mov dword [ebp - 0x8d4], ecx
cmp dword [ebp - 0x8d4], 2
jge 0x45bd00
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x8d4]
mov dword [ebp - 0x1c], edx
jmp 0x45bcda
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45bd12
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 0x45bd2a
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x8d8], 1
mov dword [ebp - 0x8dc], 1
mov dword [ebp - 0x8e0], 2
mov dword [ebp - 0x8e4], 0
mov dword [ebp - 0x8e8], 0
jmp 0x45bd6d
mov edx, dword [ebp - 0x8e8]
add edx, 1
mov dword [ebp - 0x8e8], edx
cmp dword [ebp - 0x8e8], 0
jge 0x45bdae
mov eax, dword [ebp - 0x8d8]
add eax, dword [ebp - 0x8dc]
mov dword [ebp - 0x8e0], eax
mov ecx, dword [ebp - 0x8dc]
mov dword [ebp - 0x8d8], ecx
mov edx, dword [ebp - 0x8e0]
mov dword [ebp - 0x8dc], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x8e0]
mov dword [ebp - 0x1c], eax
jmp 0x45bd5e
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x8ec], 0
jmp 0x45bdcf
mov edx, dword [ebp - 0x8ec]
add edx, 1
mov dword [ebp - 0x8ec], edx
cmp dword [ebp - 0x8ec], 2
jge 0x45be1c
cmp dword [ebp - 0x1c], 0
jge 0x45bde6
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 0x45bdfc
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x8f0], 0xfa
lea edx, [ebp - 0x8f0]
push edx
lea eax, [ebp - 0xae8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45bdc0
mov dword [ebp - 0xaec], 0
jmp 0x45be37
mov ecx, dword [ebp - 0xaec]
add ecx, 1
mov dword [ebp - 0xaec], ecx
cmp dword [ebp - 0xaec], 3
jge 0x45be4e
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xaec]
mov dword [ebp - 0x1c], edx
jmp 0x45be28
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45be60
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 0x45be78
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xaf0], 0
jmp 0x45be93
mov edx, dword [ebp - 0xaf0]
add edx, 1
mov dword [ebp - 0xaf0], edx
cmp dword [ebp - 0xaf0], 2
jge 0x45beaa
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xaf0]
mov dword [ebp - 0x1c], eax
jmp 0x45be84
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45bebc
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 0x45bed4
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xaf4], 0
jmp 0x45beef
mov edx, dword [ebp - 0xaf4]
add edx, 1
mov dword [ebp - 0xaf4], edx
cmp dword [ebp - 0xaf4], 4
jge 0x45bf3c
cmp dword [ebp - 0x1c], 0
jge 0x45bf06
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 0x45bf1c
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xaf8], 0xfa
lea edx, [ebp - 0xaf8]
push edx
lea eax, [ebp - 0xcf0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45bee0
mov ecx, 1
test ecx, ecx
je 0x45bf76
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xcf4], eax
mov eax, dword [ebp - 0xcf4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45bf68
jmp 0x45bf76
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xcf4]
mov dword [ebp - 0x1c], edx
jmp 0x45bf3c
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xcf8], 0
jmp 0x45bf97
mov ecx, dword [ebp - 0xcf8]
add ecx, 1
mov dword [ebp - 0xcf8], ecx
cmp dword [ebp - 0xcf8], 2
jge 0x45bfce
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xcf8]
mov dword [ebp - 0x1c], edx
jge 0x45bfb6
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 0x45bfcc
mov dword [ebp - 0x1c], 0
jmp 0x45bf88
mov dword [ebp - 0xcfc], 0
jmp 0x45bfe9
mov edx, dword [ebp - 0xcfc]
add edx, 1
mov dword [ebp - 0xcfc], edx
cmp dword [ebp - 0xcfc], 3
jge 0x45c020
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xcfc]
mov dword [ebp - 0x1c], eax
jge 0x45c008
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 0x45c01e
mov dword [ebp - 0x1c], 0
jmp 0x45bfda
mov dword [ebp - 0xd00], 0
jmp 0x45c03b
mov edx, dword [ebp - 0xd00]
add edx, 1
mov dword [ebp - 0xd00], edx
cmp dword [ebp - 0xd00], 2
jge 0x45c052
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xd00]
mov dword [ebp - 0x1c], eax
jmp 0x45c02c
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45c064
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 0x45c07c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xd04], 0
jmp 0x45c097
mov edx, dword [ebp - 0xd04]
add edx, 1
mov dword [ebp - 0xd04], edx
cmp dword [ebp - 0xd04], 1
jge 0x45c0e4
cmp dword [ebp - 0x1c], 0
jge 0x45c0ae
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 0x45c0c4
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xd08], 0xfa
lea edx, [ebp - 0xd08]
push edx
lea eax, [ebp - 0xf00]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45c088
mov dword [ebp - 0xf04], 1
mov dword [ebp - 0xf08], 1
mov dword [ebp - 0xf0c], 2
mov dword [ebp - 0xf10], 0
mov dword [ebp - 0xf14], 0
jmp 0x45c127
mov ecx, dword [ebp - 0xf14]
add ecx, 1
mov dword [ebp - 0xf14], ecx
cmp dword [ebp - 0xf14], 1
jge 0x45c168
mov edx, dword [ebp - 0xf04]
add edx, dword [ebp - 0xf08]
mov dword [ebp - 0xf0c], edx
mov eax, dword [ebp - 0xf08]
mov dword [ebp - 0xf04], eax
mov ecx, dword [ebp - 0xf0c]
mov dword [ebp - 0xf08], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xf0c]
mov dword [ebp - 0x1c], edx
jmp 0x45c118
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 7
mov dword [ebp - 0xf18], 0
jmp 0x45c193
mov ecx, dword [ebp - 0xf18]
add ecx, 1
mov dword [ebp - 0xf18], ecx
cmp dword [ebp - 0xf18], 3
jge 0x45c1ce
mov eax, dword [ebp - 0xf18]
cdq
mov ecx, 7
idiv ecx
cmp edx, 5
je 0x45c1c2
mov eax, dword [ebp - 0xf18]
cdq
mov ecx, 0xb
idiv ecx
cmp edx, 7
jne 0x45c1c9
and eax, 0xbc614e
jmp 0x45c1cc
mov dword [ebp - 0x1c], eax
jmp 0x45c184
mov dword [ebp - 4], 0xfffffffe
call fcn.0045c1dc
jmp 0x45c1e4
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 - 0x4c]
xor ecx, ebp
call fcn.00408b45
mov esp, ebp
pop ebp
ret