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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x5114c8
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x2aec
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x5c], 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 0x459aa8
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 0x459a9d
jmp 0x459aa8
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
jmp 0x459a77
mov eax, dword [ebp - 0x1c]
add eax, 0x17
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
jmp 0x459ac3
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], 0x18
jge 0x459ad4
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edx
jmp 0x459aba
cmp dword [ebp - 0x1c], 0
jge 0x459ae2
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 0x459afa
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], 0
jmp 0x459b0c
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 0x11
jge 0x459b1d
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
jmp 0x459b03
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x459b2f
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 0x459b47
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x30], 0
jmp 0x459b67
mov edx, dword [ebp - 0x30]
add edx, 1
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], 0x1a
jge 0x459b90
mov eax, dword [ebp - 0x30]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x459b85
mov edx, dword [ebp - 0x2c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x459b5e
mov dword [ebp - 4], 0xfffffffe
jmp 0x459bb0
mov dword [ebp - 4], 1
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x38], 0
jmp 0x459bd0
mov edx, dword [ebp - 0x38]
add edx, 1
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x38], 0x11
jge 0x459bf9
mov eax, dword [ebp - 0x38]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x459bee
mov edx, dword [ebp - 0x34]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x459bc7
mov dword [ebp - 4], 0xfffffffe
jmp 0x459c19
mov dword [ebp - 4], 2
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x40], 0
jmp 0x459c39
mov edx, dword [ebp - 0x40]
add edx, 1
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], 0x18
jge 0x459c62
mov eax, dword [ebp - 0x40]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x459c57
mov edx, dword [ebp - 0x3c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x459c30
mov dword [ebp - 4], 0xfffffffe
jmp 0x459c82
mov dword [ebp - 0x44], 0
jmp 0x459c94
mov edx, dword [ebp - 0x44]
add edx, 1
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x44], 8
jge 0x459ca5
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x44]
mov dword [ebp - 0x1c], eax
jmp 0x459c8b
cmp dword [ebp - 0x1c], 0
jge 0x459cb3
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 0x459ccb
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x459cfc
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 0x459cf1
jmp 0x459cfc
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x48]
mov dword [ebp - 0x1c], edx
jmp 0x459ccb
mov eax, dword [ebp - 0x1c]
add eax, 0x14
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x4c], 0
jmp 0x459d17
mov ecx, dword [ebp - 0x4c]
add ecx, 1
mov dword [ebp - 0x4c], ecx
cmp dword [ebp - 0x4c], 0x18
jge 0x459d28
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x4c]
mov dword [ebp - 0x1c], edx
jmp 0x459d0e
cmp dword [ebp - 0x1c], 0
jge 0x459d36
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 0x459d4e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0x50], 0xffffffff
mov dword [ebp - 0x54], 0
jmp 0x459d6e
mov edx, dword [ebp - 0x54]
add edx, 1
mov dword [ebp - 0x54], edx
cmp dword [ebp - 0x54], 4
jge 0x459d97
mov eax, dword [ebp - 0x54]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x459d8c
mov edx, dword [ebp - 0x50]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x459d65
mov dword [ebp - 4], 0xfffffffe
jmp 0x459db7
mov dword [ebp - 0x58], 0
jmp 0x459dc9
mov edx, dword [ebp - 0x58]
add edx, 1
mov dword [ebp - 0x58], edx
cmp dword [ebp - 0x58], 2
jge 0x459e07
cmp dword [ebp - 0x1c], 0
jge 0x459ddd
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 0x459df3
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x258]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x459dc0
mov dword [ebp - 0x25c], 0
jmp 0x459e22
mov eax, dword [ebp - 0x25c]
add eax, 1
mov dword [ebp - 0x25c], eax
cmp dword [ebp - 0x25c], 0xa
jge 0x459e6f
cmp dword [ebp - 0x1c], 0
jge 0x459e39
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 0x459e4f
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x260], 0xfa
lea edx, [ebp - 0x260]
push edx
lea eax, [ebp - 0x458]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x459e13
mov dword [ebp - 0x45c], 0
jmp 0x459e8a
mov ecx, dword [ebp - 0x45c]
add ecx, 1
mov dword [ebp - 0x45c], ecx
cmp dword [ebp - 0x45c], 1
jge 0x459ed7
mov eax, dword [ebp - 0x45c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x459eb9
mov eax, dword [ebp - 0x45c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x459ec9
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x45c]
mov dword [ebp - 0x1c], edx
jmp 0x459ed5
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x45c]
mov dword [ebp - 0x1c], eax
jmp 0x459e7b
mov dword [ebp - 0x460], 0
jmp 0x459ef2
mov ecx, dword [ebp - 0x460]
add ecx, 1
mov dword [ebp - 0x460], ecx
cmp dword [ebp - 0x460], 6
jge 0x459f33
cmp dword [ebp - 0x1c], 0
jge 0x459f09
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 0x459f1f
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x658]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x459ee3
mov dword [ebp - 0x65c], 0
jmp 0x459f4e
mov eax, dword [ebp - 0x65c]
add eax, 1
mov dword [ebp - 0x65c], eax
cmp dword [ebp - 0x65c], 2
jge 0x459f9b
mov eax, dword [ebp - 0x65c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x459f7d
mov eax, dword [ebp - 0x65c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x459f8d
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x65c]
mov dword [ebp - 0x1c], edx
jmp 0x459f99
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x65c]
mov dword [ebp - 0x1c], eax
jmp 0x459f3f
mov dword [ebp - 0x660], 0
jmp 0x459fb6
mov ecx, dword [ebp - 0x660]
add ecx, 1
mov dword [ebp - 0x660], ecx
cmp dword [ebp - 0x660], 0
jge 0x459ff7
cmp dword [ebp - 0x1c], 0
jge 0x459fcd
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 0x459fe3
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x858]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x459fa7
mov dword [ebp - 0x85c], 0
jmp 0x45a012
mov eax, dword [ebp - 0x85c]
add eax, 1
mov dword [ebp - 0x85c], eax
cmp dword [ebp - 0x85c], 5
jge 0x45a029
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x85c]
mov dword [ebp - 0x1c], ecx
jmp 0x45a003
cmp dword [ebp - 0x1c], 0
jge 0x45a037
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 0x45a04f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x860], 0
jmp 0x45a06a
mov edx, dword [ebp - 0x860]
add edx, 1
mov dword [ebp - 0x860], edx
cmp dword [ebp - 0x860], 4
jge 0x45a0ab
cmp dword [ebp - 0x1c], 0
jge 0x45a081
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 0x45a097
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa58]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x45a05b
mov dword [ebp - 4], 4
mov dword [ebp - 0xa5c], 0xffffffff
mov dword [ebp - 0xa60], 0
jmp 0x45a0d7
mov eax, dword [ebp - 0xa60]
add eax, 1
mov dword [ebp - 0xa60], eax
cmp dword [ebp - 0xa60], 1
jge 0x45a109
mov eax, dword [ebp - 0xa60]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x45a0fe
mov edx, dword [ebp - 0xa5c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x45a0c8
mov dword [ebp - 4], 0xfffffffe
jmp 0x45a129
mov dword [ebp - 0xa64], 0
jmp 0x45a144
mov edx, dword [ebp - 0xa64]
add edx, 1
mov dword [ebp - 0xa64], edx
cmp dword [ebp - 0xa64], 4
jge 0x45a15b
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xa64]
mov dword [ebp - 0x1c], eax
jmp 0x45a135
cmp dword [ebp - 0x1c], 0
jge 0x45a169
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 0x45a181
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa68], 0
jmp 0x45a19c
mov edx, dword [ebp - 0xa68]
add edx, 1
mov dword [ebp - 0xa68], edx
cmp dword [ebp - 0xa68], 4
jge 0x45a1e9
cmp dword [ebp - 0x1c], 0
jge 0x45a1b3
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 0x45a1c9
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xa6c], 0xfa
lea edx, [ebp - 0xa6c]
push edx
lea eax, [ebp - 0xc68]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45a18d
mov dword [ebp - 0xc6c], 0
jmp 0x45a204
mov ecx, dword [ebp - 0xc6c]
add ecx, 1
mov dword [ebp - 0xc6c], ecx
cmp dword [ebp - 0xc6c], 2
jge 0x45a245
cmp dword [ebp - 0x1c], 0
jge 0x45a21b
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 0x45a231
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xe68]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x45a1f5
mov dword [ebp - 0xe6c], 0
jmp 0x45a260
mov eax, dword [ebp - 0xe6c]
add eax, 1
mov dword [ebp - 0xe6c], eax
cmp dword [ebp - 0xe6c], 6
jge 0x45a2ad
cmp dword [ebp - 0x1c], 0
jge 0x45a277
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 0x45a28d
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xe70], 0xfa
lea edx, [ebp - 0xe70]
push edx
lea eax, [ebp - 0x1068]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45a251
mov dword [ebp - 0x106c], 0
jmp 0x45a2c8
mov ecx, dword [ebp - 0x106c]
add ecx, 1
mov dword [ebp - 0x106c], ecx
cmp dword [ebp - 0x106c], 4
jge 0x45a2df
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x106c]
mov dword [ebp - 0x1c], edx
jmp 0x45a2b9
cmp dword [ebp - 0x1c], 0
jge 0x45a2ed
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 0x45a305
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1070], 0
jmp 0x45a320
mov edx, dword [ebp - 0x1070]
add edx, 1
mov dword [ebp - 0x1070], edx
cmp dword [ebp - 0x1070], 3
jge 0x45a361
cmp dword [ebp - 0x1c], 0
jge 0x45a337
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 0x45a34d
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1268]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x45a311
mov dword [ebp - 0x126c], 0
jmp 0x45a37c
mov eax, dword [ebp - 0x126c]
add eax, 1
mov dword [ebp - 0x126c], eax
cmp dword [ebp - 0x126c], 7
jge 0x45a3c9
mov eax, dword [ebp - 0x126c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x45a3ab
mov eax, dword [ebp - 0x126c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x45a3bb
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x126c]
mov dword [ebp - 0x1c], edx
jmp 0x45a3c7
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x126c]
mov dword [ebp - 0x1c], eax
jmp 0x45a36d
mov dword [ebp - 0x1270], 0
jmp 0x45a3e4
mov ecx, dword [ebp - 0x1270]
add ecx, 1
mov dword [ebp - 0x1270], ecx
cmp dword [ebp - 0x1270], 1
jge 0x45a3fb
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x1270]
mov dword [ebp - 0x1c], edx
jmp 0x45a3d5
cmp dword [ebp - 0x1c], 0
jge 0x45a409
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 0x45a421
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0x1274], 0xffffffff
mov dword [ebp - 0x1278], 0
jmp 0x45a44d
mov edx, dword [ebp - 0x1278]
add edx, 1
mov dword [ebp - 0x1278], edx
cmp dword [ebp - 0x1278], 2
jge 0x45a47f
mov eax, dword [ebp - 0x1278]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x45a474
mov edx, dword [ebp - 0x1274]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x45a43e
mov dword [ebp - 4], 0xfffffffe
jmp 0x45a49f
mov dword [ebp - 0x127c], 0
jmp 0x45a4ba
mov edx, dword [ebp - 0x127c]
add edx, 1
mov dword [ebp - 0x127c], edx
cmp dword [ebp - 0x127c], 2
jge 0x45a4fb
cmp dword [ebp - 0x1c], 0
jge 0x45a4d1
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 0x45a4e7
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1478]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x45a4ab
mov dword [ebp - 0x147c], 0
jmp 0x45a516
mov eax, dword [ebp - 0x147c]
add eax, 1
mov dword [ebp - 0x147c], eax
cmp dword [ebp - 0x147c], 4
jge 0x45a52d
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x147c]
mov dword [ebp - 0x1c], ecx
jmp 0x45a507
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45a53f
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 0x45a557
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1480], 0
jmp 0x45a572
mov edx, dword [ebp - 0x1480]
add edx, 1
mov dword [ebp - 0x1480], edx
cmp dword [ebp - 0x1480], 0
jge 0x45a5bf
mov eax, dword [ebp - 0x1480]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x45a5a1
mov eax, dword [ebp - 0x1480]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x45a5b1
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1480]
mov dword [ebp - 0x1c], edx
jmp 0x45a5bd
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1480]
mov dword [ebp - 0x1c], eax
jmp 0x45a563
mov dword [ebp - 0x1484], 0
jmp 0x45a5da
mov ecx, dword [ebp - 0x1484]
add ecx, 1
mov dword [ebp - 0x1484], ecx
cmp dword [ebp - 0x1484], 2
jge 0x45a627
cmp dword [ebp - 0x1c], 0
jge 0x45a5f1
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 0x45a607
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1488], 0xfa
lea edx, [ebp - 0x1488]
push edx
lea eax, [ebp - 0x1680]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45a5cb
mov dword [ebp - 0x1684], 0
jmp 0x45a642
mov ecx, dword [ebp - 0x1684]
add ecx, 1
mov dword [ebp - 0x1684], ecx
cmp dword [ebp - 0x1684], 1
jge 0x45a659
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1684]
mov dword [ebp - 0x1c], edx
jmp 0x45a633
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45a66b
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 0x45a683
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x45a6bd
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1688], eax
mov eax, dword [ebp - 0x1688]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45a6af
jmp 0x45a6bd
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1688]
mov dword [ebp - 0x1c], edx
jmp 0x45a683
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x168c], 0
jmp 0x45a6e1
mov ecx, dword [ebp - 0x168c]
add ecx, 1
mov dword [ebp - 0x168c], ecx
cmp dword [ebp - 0x168c], 0
jge 0x45a6f8
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x168c]
mov dword [ebp - 0x1c], edx
jmp 0x45a6d2
cmp dword [ebp - 0x1c], 0
jge 0x45a706
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 0x45a71e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1690], 0
jmp 0x45a739
mov edx, dword [ebp - 0x1690]
add edx, 1
mov dword [ebp - 0x1690], edx
cmp dword [ebp - 0x1690], 4
jge 0x45a786
mov eax, dword [ebp - 0x1690]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x45a768
mov eax, dword [ebp - 0x1690]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x45a778
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1690]
mov dword [ebp - 0x1c], edx
jmp 0x45a784
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1690]
mov dword [ebp - 0x1c], eax
jmp 0x45a72a
mov dword [ebp - 0x1694], 0
jmp 0x45a7a1
mov ecx, dword [ebp - 0x1694]
add ecx, 1
mov dword [ebp - 0x1694], ecx
cmp dword [ebp - 0x1694], 2
jge 0x45a7ee
mov eax, dword [ebp - 0x1694]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x45a7d0
mov eax, dword [ebp - 0x1694]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x45a7e0
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1694]
mov dword [ebp - 0x1c], edx
jmp 0x45a7ec
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1694]
mov dword [ebp - 0x1c], eax
jmp 0x45a792
mov dword [ebp - 0x1698], 0
jmp 0x45a809
mov ecx, dword [ebp - 0x1698]
add ecx, 1
mov dword [ebp - 0x1698], ecx
cmp dword [ebp - 0x1698], 0
jge 0x45a856
mov eax, dword [ebp - 0x1698]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x45a838
mov eax, dword [ebp - 0x1698]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x45a848
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1698]
mov dword [ebp - 0x1c], edx
jmp 0x45a854
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1698]
mov dword [ebp - 0x1c], eax
jmp 0x45a7fa
mov dword [ebp - 0x169c], 0
jmp 0x45a871
mov ecx, dword [ebp - 0x169c]
add ecx, 1
mov dword [ebp - 0x169c], ecx
cmp dword [ebp - 0x169c], 3
jge 0x45a8b2
cmp dword [ebp - 0x1c], 0
jge 0x45a888
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 0x45a89e
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1898]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x45a862
mov dword [ebp - 0x189c], 0
jmp 0x45a8cd
mov eax, dword [ebp - 0x189c]
add eax, 1
mov dword [ebp - 0x189c], eax
cmp dword [ebp - 0x189c], 4
jge 0x45a8e4
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x189c]
mov dword [ebp - 0x1c], ecx
jmp 0x45a8be
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45a8f6
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 0x45a90e
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18a0], 0
jmp 0x45a929
mov edx, dword [ebp - 0x18a0]
add edx, 1
mov dword [ebp - 0x18a0], edx
cmp dword [ebp - 0x18a0], 2
jge 0x45a940
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x18a0]
mov dword [ebp - 0x1c], eax
jmp 0x45a91a
cmp dword [ebp - 0x1c], 0
jge 0x45a94e
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 0x45a966
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x45a9a0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18a4], eax
mov eax, dword [ebp - 0x18a4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45a992
jmp 0x45a9a0
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18a4]
mov dword [ebp - 0x1c], edx
jmp 0x45a966
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18a8], 0
jmp 0x45a9c4
mov ecx, dword [ebp - 0x18a8]
add ecx, 1
mov dword [ebp - 0x18a8], ecx
cmp dword [ebp - 0x18a8], 2
jge 0x45a9db
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18a8]
mov dword [ebp - 0x1c], edx
jmp 0x45a9b5
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45a9ed
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 0x45aa05
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 6
mov dword [ebp - 0x18ac], 0xffffffff
mov dword [ebp - 0x18b0], 0
jmp 0x45aa31
mov edx, dword [ebp - 0x18b0]
add edx, 1
mov dword [ebp - 0x18b0], edx
cmp dword [ebp - 0x18b0], 1
jge 0x45aa63
mov eax, dword [ebp - 0x18b0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x45aa58
mov edx, dword [ebp - 0x18ac]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x45aa22
mov dword [ebp - 4], 0xfffffffe
jmp 0x45aa83
mov dword [ebp - 0x18b4], 0
jmp 0x45aa9e
mov edx, dword [ebp - 0x18b4]
add edx, 1
mov dword [ebp - 0x18b4], edx
cmp dword [ebp - 0x18b4], 0
jge 0x45aaeb
cmp dword [ebp - 0x1c], 0
jge 0x45aab5
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 0x45aacb
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18b8], 0xfa
lea edx, [ebp - 0x18b8]
push edx
lea eax, [ebp - 0x1ab0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x45aa8f
mov dword [ebp - 0x1ab4], 0
jmp 0x45ab06
mov ecx, dword [ebp - 0x1ab4]
add ecx, 1
mov dword [ebp - 0x1ab4], ecx
cmp dword [ebp - 0x1ab4], 0
jge 0x45ab1d
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1ab4]
mov dword [ebp - 0x1c], edx
jmp 0x45aaf7
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x45ab2f
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 0x45ab47
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x45ab81
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1ab8], eax
mov eax, dword [ebp - 0x1ab8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x45ab73
jmp 0x45ab81
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1ab8]
mov dword [ebp - 0x1c], edx
jmp 0x45ab47
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1abc], 0
jmp 0x45aba2
cmp dword [ebp - 0x1abc], 0
jge 0x45abef
cmp dword [ebp - 0x1c], 0
jge 0x45abb9
mov dword [ebp - 0x1cbc], 0
jmp 0x45ac0a