Function at 0x458a50
Capabilities:
Check os version
Get common file path
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x511478
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x1a88
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x48], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x1c], 0
mov eax, 1
test eax, eax
je 0x458ac8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x458abd
jmp 0x458ac8
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
jmp 0x458a97
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
jmp 0x458ae3
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], 0x19
jge 0x458af4
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edx
jmp 0x458ada
cmp dword [ebp - 0x1c], 0
jge 0x458b02
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 0x458b1a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], 0
jmp 0x458b2c
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 3
jge 0x458b3d
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
jmp 0x458b23
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x458b4f
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 0x458b67
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2c], 0
jmp 0x458b79
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
cmp dword [ebp - 0x2c], 8
jge 0x458bb7
mov eax, dword [ebp - 0x2c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x458b9f
mov eax, dword [ebp - 0x2c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x458bac
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], edx
jmp 0x458bb5
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
jmp 0x458b70
mov dword [ebp - 0x30], 0
jmp 0x458bc9
mov ecx, dword [ebp - 0x30]
add ecx, 1
mov dword [ebp - 0x30], ecx
cmp dword [ebp - 0x30], 0x10
jge 0x458c07
mov eax, dword [ebp - 0x30]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x458bef
mov eax, dword [ebp - 0x30]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x458bfc
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x30]
mov dword [ebp - 0x1c], edx
jmp 0x458c05
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x30]
mov dword [ebp - 0x1c], eax
jmp 0x458bc0
mov dword [ebp - 0x34], 0
jmp 0x458c19
mov ecx, dword [ebp - 0x34]
add ecx, 1
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x34], 1
jge 0x458c2a
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x34]
mov dword [ebp - 0x1c], edx
jmp 0x458c10
cmp dword [ebp - 0x1c], 0
jge 0x458c38
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 0x458c50
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x38], 0
jmp 0x458c62
mov edx, dword [ebp - 0x38]
add edx, 1
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x38], 0
jge 0x458c73
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x38]
mov dword [ebp - 0x1c], eax
jmp 0x458c59
cmp dword [ebp - 0x1c], 0
jge 0x458c81
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 0x458c99
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x3c], 0
jmp 0x458cab
mov edx, dword [ebp - 0x3c]
add edx, 1
mov dword [ebp - 0x3c], edx
cmp dword [ebp - 0x3c], 3
jge 0x458cbc
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x3c]
mov dword [ebp - 0x1c], eax
jmp 0x458ca2
cmp dword [ebp - 0x1c], 0
jge 0x458cca
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 0x458ce2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x40], 0
jmp 0x458cf4
mov edx, dword [ebp - 0x40]
add edx, 1
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], 3
jge 0x458d05
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x40]
mov dword [ebp - 0x1c], eax
jmp 0x458ceb
cmp dword [ebp - 0x1c], 0
jge 0x458d13
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 0x458d2b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x44], 0
jmp 0x458d3d
mov edx, dword [ebp - 0x44]
add edx, 1
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x44], 1
jge 0x458d7b
cmp dword [ebp - 0x1c], 0
jge 0x458d51
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
je 0x458d67
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x240]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x458d34
mov dword [ebp - 4], 0
mov dword [ebp - 0x244], 0xffffffff
mov dword [ebp - 0x248], 0
jmp 0x458da7
mov eax, dword [ebp - 0x248]
add eax, 1
mov dword [ebp - 0x248], eax
cmp dword [ebp - 0x248], 6
jge 0x458dd9
mov eax, dword [ebp - 0x248]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x458dce
mov edx, dword [ebp - 0x244]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x458d98
mov dword [ebp - 4], 0xfffffffe
jmp 0x458df9
mov dword [ebp - 0x24c], 0
jmp 0x458e14
mov edx, dword [ebp - 0x24c]
add edx, 1
mov dword [ebp - 0x24c], edx
cmp dword [ebp - 0x24c], 3
jge 0x458e61
cmp dword [ebp - 0x1c], 0
jge 0x458e2b
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 0x458e41
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x250], 0xfa
lea edx, [ebp - 0x250]
push edx
lea eax, [ebp - 0x448]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x458e05
mov dword [ebp - 4], 1
mov dword [ebp - 0x44c], 0xffffffff
mov dword [ebp - 0x450], 0
jmp 0x458e8d
mov ecx, dword [ebp - 0x450]
add ecx, 1
mov dword [ebp - 0x450], ecx
cmp dword [ebp - 0x450], 1
jge 0x458ebf
mov eax, dword [ebp - 0x450]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x458eb4
mov edx, dword [ebp - 0x44c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x458e7e
mov dword [ebp - 4], 0xfffffffe
jmp 0x458edf
mov dword [ebp - 0x454], 0
jmp 0x458efa
mov edx, dword [ebp - 0x454]
add edx, 1
mov dword [ebp - 0x454], edx
cmp dword [ebp - 0x454], 2
jge 0x458f47
cmp dword [ebp - 0x1c], 0
jge 0x458f11
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 0x458f27
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x458], 0xfa
lea edx, [ebp - 0x458]
push edx
lea eax, [ebp - 0x650]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x458eeb
mov dword [ebp - 0x654], 0
jmp 0x458f62
mov ecx, dword [ebp - 0x654]
add ecx, 1
mov dword [ebp - 0x654], ecx
cmp dword [ebp - 0x654], 7
jge 0x458f79
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x654]
mov dword [ebp - 0x1c], edx
jmp 0x458f53
cmp dword [ebp - 0x1c], 0
jge 0x458f87
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 0x458f9f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x658], 0
jmp 0x458fba
mov edx, dword [ebp - 0x658]
add edx, 1
mov dword [ebp - 0x658], edx
cmp dword [ebp - 0x658], 0xa
jge 0x458fd1
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x658]
mov dword [ebp - 0x1c], eax
jmp 0x458fab
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x458fe3
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 0x458ffb
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x65c], 0
jmp 0x459016
mov edx, dword [ebp - 0x65c]
add edx, 1
mov dword [ebp - 0x65c], edx
cmp dword [ebp - 0x65c], 1
jge 0x459063
cmp dword [ebp - 0x1c], 0
jge 0x45902d
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 0x459043
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x660], 0xfa
lea edx, [ebp - 0x660]
push edx
lea eax, [ebp - 0x858]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x459007
mov dword [ebp - 4], 2
mov dword [ebp - 0x85c], 0xffffffff
mov dword [ebp - 0x860], 0
jmp 0x45908f
mov ecx, dword [ebp - 0x860]
add ecx, 1
mov dword [ebp - 0x860], ecx
cmp dword [ebp - 0x860], 2
jge 0x4590c1
mov eax, dword [ebp - 0x860]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4590b6
mov edx, dword [ebp - 0x85c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x459080
mov dword [ebp - 4], 0xfffffffe
jmp 0x4590e1
mov dword [ebp - 4], 3
mov dword [ebp - 0x864], 0xffffffff
mov dword [ebp - 0x868], 0
jmp 0x45910d
mov edx, dword [ebp - 0x868]
add edx, 1
mov dword [ebp - 0x868], edx
cmp dword [ebp - 0x868], 0x10
jge 0x45913f
mov eax, dword [ebp - 0x868]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x459134
mov edx, dword [ebp - 0x864]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4590fe
mov dword [ebp - 4], 0xfffffffe
jmp 0x45915f
mov dword [ebp - 0x86c], 0
jmp 0x45917a
mov edx, dword [ebp - 0x86c]
add edx, 1
mov dword [ebp - 0x86c], edx
cmp dword [ebp - 0x86c], 5
jge 0x459191
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x86c]
mov dword [ebp - 0x1c], eax
jmp 0x45916b
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4591a3
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 0x4591bb
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x870], 0
jmp 0x4591d6
mov edx, dword [ebp - 0x870]
add edx, 1
mov dword [ebp - 0x870], edx
cmp dword [ebp - 0x870], 0xf
jge 0x459223
cmp dword [ebp - 0x1c], 0
jge 0x4591ed
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 0x459203
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x874], 0xfa
lea edx, [ebp - 0x874]
push edx
lea eax, [ebp - 0xa70]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4591c7
mov dword [ebp - 0xa74], 0
jmp 0x45923e
mov ecx, dword [ebp - 0xa74]
add ecx, 1
mov dword [ebp - 0xa74], ecx
cmp dword [ebp - 0xa74], 6
jge 0x459255
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa74]
mov dword [ebp - 0x1c], edx
jmp 0x45922f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459267
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 0x45927f
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa78], 0
jmp 0x45929a
mov edx, dword [ebp - 0xa78]
add edx, 1
mov dword [ebp - 0xa78], edx
cmp dword [ebp - 0xa78], 0
jge 0x4592e7
mov eax, dword [ebp - 0xa78]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4592c9
mov eax, dword [ebp - 0xa78]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4592d9
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa78]
mov dword [ebp - 0x1c], edx
jmp 0x4592e5
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xa78]
mov dword [ebp - 0x1c], eax
jmp 0x45928b
mov dword [ebp - 0xa7c], 0
jmp 0x459302
mov ecx, dword [ebp - 0xa7c]
add ecx, 1
mov dword [ebp - 0xa7c], ecx
cmp dword [ebp - 0xa7c], 5
jge 0x459319
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xa7c]
mov dword [ebp - 0x1c], edx
jmp 0x4592f3
cmp dword [ebp - 0x1c], 0
jge 0x459327
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 0x45933f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa80], 0
jmp 0x45935a
mov edx, dword [ebp - 0xa80]
add edx, 1
mov dword [ebp - 0xa80], edx
cmp dword [ebp - 0xa80], 2
jge 0x459371
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xa80]
mov dword [ebp - 0x1c], eax
jmp 0x45934b
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459383
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 0x45939b
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 4
mov dword [ebp - 0xa84], 0xffffffff
mov dword [ebp - 0xa88], 0
jmp 0x4593c7
mov edx, dword [ebp - 0xa88]
add edx, 1
mov dword [ebp - 0xa88], edx
cmp dword [ebp - 0xa88], 3
jge 0x4593f9
mov eax, dword [ebp - 0xa88]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4593ee
mov edx, dword [ebp - 0xa84]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4593b8
mov dword [ebp - 4], 0xfffffffe
jmp 0x459419
mov dword [ebp - 0xa8c], 0
jmp 0x459434
mov edx, dword [ebp - 0xa8c]
add edx, 1
mov dword [ebp - 0xa8c], edx
cmp dword [ebp - 0xa8c], 4
jge 0x459481
cmp dword [ebp - 0x1c], 0
jge 0x45944b
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 0x459461
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xa90], 0xfa
lea edx, [ebp - 0xa90]
push edx
lea eax, [ebp - 0xc88]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x459425
mov dword [ebp - 0xc8c], 0
jmp 0x45949c
mov ecx, dword [ebp - 0xc8c]
add ecx, 1
mov dword [ebp - 0xc8c], ecx
cmp dword [ebp - 0xc8c], 2
jge 0x4594b3
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc8c]
mov dword [ebp - 0x1c], edx
jmp 0x45948d
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4594c5
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 0x4594dd
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc90], 0
jmp 0x4594f8
mov edx, dword [ebp - 0xc90]
add edx, 1
mov dword [ebp - 0xc90], edx
cmp dword [ebp - 0xc90], 3
jge 0x45950f
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xc90]
mov dword [ebp - 0x1c], eax
jmp 0x4594e9
cmp dword [ebp - 0x1c], 0
jge 0x45951d
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 0x459535
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc94], 0
jmp 0x459550
mov edx, dword [ebp - 0xc94]
add edx, 1
mov dword [ebp - 0xc94], edx
cmp dword [ebp - 0xc94], 8
jge 0x459567
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xc94]
mov dword [ebp - 0x1c], eax
jmp 0x459541
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459579
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 0x459591
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc98], 0
jmp 0x4595ac
mov edx, dword [ebp - 0xc98]
add edx, 1
mov dword [ebp - 0xc98], edx
cmp dword [ebp - 0xc98], 3
jge 0x4595f9
mov eax, dword [ebp - 0xc98]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4595db
mov eax, dword [ebp - 0xc98]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4595eb
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc98]
mov dword [ebp - 0x1c], edx
jmp 0x4595f7
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc98]
mov dword [ebp - 0x1c], eax
jmp 0x45959d
mov dword [ebp - 0xc9c], 0
jmp 0x459614
mov ecx, dword [ebp - 0xc9c]
add ecx, 1
mov dword [ebp - 0xc9c], ecx
cmp dword [ebp - 0xc9c], 2
jge 0x459661
cmp dword [ebp - 0x1c], 0
jge 0x45962b
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 0x459641
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xca0], 0xfa
lea edx, [ebp - 0xca0]
push edx
lea eax, [ebp - 0xe98]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x459605
mov dword [ebp - 0xe9c], 0
jmp 0x45967c
mov ecx, dword [ebp - 0xe9c]
add ecx, 1
mov dword [ebp - 0xe9c], ecx
cmp dword [ebp - 0xe9c], 8
jge 0x4596bd
cmp dword [ebp - 0x1c], 0
jge 0x459693
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
je 0x4596a9
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1098]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x45966d
mov dword [ebp - 0x109c], 0
jmp 0x4596d8
mov eax, dword [ebp - 0x109c]
add eax, 1
mov dword [ebp - 0x109c], eax
cmp dword [ebp - 0x109c], 0
jge 0x459725
cmp dword [ebp - 0x1c], 0
jge 0x4596ef
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 0x459705
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x10a0], 0xfa
lea edx, [ebp - 0x10a0]
push edx
lea eax, [ebp - 0x1298]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4596c9
mov dword [ebp - 0x129c], 0
jmp 0x459740
mov ecx, dword [ebp - 0x129c]
add ecx, 1
mov dword [ebp - 0x129c], ecx
cmp dword [ebp - 0x129c], 6
jge 0x459757
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x129c]
mov dword [ebp - 0x1c], edx
jmp 0x459731
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459769
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 0x459781
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x12a0], 0
jmp 0x45979c
mov edx, dword [ebp - 0x12a0]
add edx, 1
mov dword [ebp - 0x12a0], edx
cmp dword [ebp - 0x12a0], 2
jge 0x4597dd
cmp dword [ebp - 0x1c], 0
jge 0x4597b3
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
je 0x4597c9
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1498]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x45978d
mov dword [ebp - 0x149c], 0
jmp 0x4597f8
mov eax, dword [ebp - 0x149c]
add eax, 1
mov dword [ebp - 0x149c], eax
cmp dword [ebp - 0x149c], 7
jge 0x45980f
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x149c]
mov dword [ebp - 0x1c], ecx
jmp 0x4597e9
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459821
mov edx, dword [ebp - 0x1c]
imul edx, edx, 0xfffffffb
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x459839
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14a0], 0
jmp 0x459854
mov edx, dword [ebp - 0x14a0]
add edx, 1
mov dword [ebp - 0x14a0], edx
cmp dword [ebp - 0x14a0], 3
jge 0x459895
cmp dword [ebp - 0x1c], 0
jge 0x45986b
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
je 0x459881
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1698]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x459845
mov dword [ebp - 0x169c], 0
jmp 0x4598b0
mov eax, dword [ebp - 0x169c]
add eax, 1
mov dword [ebp - 0x169c], eax
cmp dword [ebp - 0x169c], 0
jge 0x4598f1
cmp dword [ebp - 0x1c], 0
jge 0x4598c7
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
je 0x4598dd
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1898]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4598a1
mov dword [ebp - 0x189c], 0
jmp 0x45990c
mov eax, dword [ebp - 0x189c]
add eax, 1
mov dword [ebp - 0x189c], eax
cmp dword [ebp - 0x189c], 0
jge 0x45994d
cmp dword [ebp - 0x1c], 0
jge 0x459923
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
je 0x459939
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1a98]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4598fd
mov dword [ebp - 0x1a9c], 0
jmp 0x459968
mov eax, dword [ebp - 0x1a9c]
add eax, 1
mov dword [ebp - 0x1a9c], eax
cmp dword [ebp - 0x1a9c], 1
jge 0x45997f
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1a9c]
mov dword [ebp - 0x1c], ecx
jmp 0x459959
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459991
mov edx, dword [ebp - 0x1c]
imul edx, edx, 0xfffffffb
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 7
idiv ecx
test edx, edx
je 0x4599a9
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1aa0], 0
jmp 0x4599c4
mov edx, dword [ebp - 0x1aa0]
add edx, 1
mov dword [ebp - 0x1aa0], edx
cmp dword [ebp - 0x1aa0], 2
jge 0x459a11
mov eax, dword [ebp - 0x1aa0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4599f3
mov eax, dword [ebp - 0x1aa0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x459a03
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1aa0]
mov dword [ebp - 0x1c], edx
jmp 0x459a0f
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1aa0]
mov dword [ebp - 0x1c], eax
jmp 0x4599b5
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 - 0x48]
xor ecx, ebp
call fcn.004079a5
mov esp, ebp
pop ebp
ret