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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x5132b8
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x2528
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x44], 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 dword [ebp - 0x20], 0
jmp 0x4b5ec9
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x31
jge 0x4b5eda
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jmp 0x4b5ec0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4b5eec
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 0x4b5f04
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
jmp 0x4b5f16
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 0x1d
jge 0x4b5f27
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
jmp 0x4b5f0d
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4b5f39
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 0x4b5f51
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], 0
jmp 0x4b5f63
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 0x1b
jge 0x4b5fa1
mov eax, dword [ebp - 0x28]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4b5f89
mov eax, dword [ebp - 0x28]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4b5f96
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x28]
mov dword [ebp - 0x1c], edx
jmp 0x4b5f9f
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
jmp 0x4b5f5a
mov ecx, 1
test ecx, ecx
je 0x4b5fd2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4b5fc7
jmp 0x4b5fd2
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], edx
jmp 0x4b5fa1
mov eax, dword [ebp - 0x1c]
add eax, 0x16
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4b600c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4b6001
jmp 0x4b600c
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x30]
mov dword [ebp - 0x1c], edx
jmp 0x4b5fdb
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x34], 0
jmp 0x4b6027
mov ecx, dword [ebp - 0x34]
add ecx, 1
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x34], 0xf
jge 0x4b6038
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x34]
mov dword [ebp - 0x1c], edx
jmp 0x4b601e
cmp dword [ebp - 0x1c], 0
jge 0x4b6046
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 0x4b605e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x38], 0
jmp 0x4b6070
mov edx, dword [ebp - 0x38]
add edx, 1
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x38], 0x17
jge 0x4b6081
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x38]
mov dword [ebp - 0x1c], eax
jmp 0x4b6067
cmp dword [ebp - 0x1c], 0
jge 0x4b608f
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 0x4b60a7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x3c], 0
jmp 0x4b60b9
mov edx, dword [ebp - 0x3c]
add edx, 1
mov dword [ebp - 0x3c], edx
cmp dword [ebp - 0x3c], 9
jge 0x4b60fd
cmp dword [ebp - 0x1c], 0
jge 0x4b60cd
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 0x4b60e3
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x40], 0xfa
lea edx, [ebp - 0x40]
push edx
lea eax, [ebp - 0x240]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4b60b0
mov ecx, 1
test ecx, ecx
je 0x4b6137
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x244], eax
mov eax, dword [ebp - 0x244]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4b6129
jmp 0x4b6137
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x244]
mov dword [ebp - 0x1c], edx
jmp 0x4b60fd
mov eax, dword [ebp - 0x1c]
add eax, 0x15
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x248], 0
jmp 0x4b615b
mov ecx, dword [ebp - 0x248]
add ecx, 1
mov dword [ebp - 0x248], ecx
cmp dword [ebp - 0x248], 7
jge 0x4b6172
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x248]
mov dword [ebp - 0x1c], edx
jmp 0x4b614c
cmp dword [ebp - 0x1c], 0
jge 0x4b6180
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 0x4b6198
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24c], 0
jmp 0x4b61b3
mov edx, dword [ebp - 0x24c]
add edx, 1
mov dword [ebp - 0x24c], edx
cmp dword [ebp - 0x24c], 3
jge 0x4b61ca
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x24c]
mov dword [ebp - 0x1c], eax
jmp 0x4b61a4
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4b61dc
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 0x4b61f4
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x250], 0
jmp 0x4b620f
mov edx, dword [ebp - 0x250]
add edx, 1
mov dword [ebp - 0x250], edx
cmp dword [ebp - 0x250], 5
jge 0x4b6226
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x250]
mov dword [ebp - 0x1c], eax
jmp 0x4b6200
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4b6238
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 0x4b6250
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x254], 0
jmp 0x4b626b
mov edx, dword [ebp - 0x254]
add edx, 1
mov dword [ebp - 0x254], edx
cmp dword [ebp - 0x254], 0xb
jge 0x4b6282
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x254]
mov dword [ebp - 0x1c], eax
jmp 0x4b625c
cmp dword [ebp - 0x1c], 0
jge 0x4b6290
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 0x4b62a8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x258], 0
jmp 0x4b62c3
mov edx, dword [ebp - 0x258]
add edx, 1
mov dword [ebp - 0x258], edx
cmp dword [ebp - 0x258], 0xf
jge 0x4b62da
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x258]
mov dword [ebp - 0x1c], eax
jmp 0x4b62b4
cmp dword [ebp - 0x1c], 0
jge 0x4b62e8
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 0x4b6300
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x25c], 0
jmp 0x4b631b
mov edx, dword [ebp - 0x25c]
add edx, 1
mov dword [ebp - 0x25c], edx
cmp dword [ebp - 0x25c], 0
jge 0x4b635c
cmp dword [ebp - 0x1c], 0
jge 0x4b6332
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 0x4b6348
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x458]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4b630c
mov eax, 1
test eax, eax
je 0x4b6396
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x45c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4b6388
jmp 0x4b6396
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x45c]
mov dword [ebp - 0x1c], edx
jmp 0x4b635c
mov eax, dword [ebp - 0x1c]
add eax, 0xe
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x460], 0
jmp 0x4b63ba
mov ecx, dword [ebp - 0x460]
add ecx, 1
mov dword [ebp - 0x460], ecx
cmp dword [ebp - 0x460], 6
jge 0x4b63d1
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x460]
mov dword [ebp - 0x1c], edx
jmp 0x4b63ab
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4b63e3
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 0x4b63fb
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x464], 0
jmp 0x4b6416
mov edx, dword [ebp - 0x464]
add edx, 1
mov dword [ebp - 0x464], edx
cmp dword [ebp - 0x464], 5
jge 0x4b6457
cmp dword [ebp - 0x1c], 0
jge 0x4b642d
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 0x4b6443
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x660]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4b6407
mov dword [ebp - 0x664], 0
jmp 0x4b6472
mov eax, dword [ebp - 0x664]
add eax, 1
mov dword [ebp - 0x664], eax
cmp dword [ebp - 0x664], 6
jge 0x4b6489
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x664]
mov dword [ebp - 0x1c], ecx
jmp 0x4b6463
cmp dword [ebp - 0x1c], 0
jge 0x4b6497
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 0x4b64af
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x668], 0
jmp 0x4b64ca
mov edx, dword [ebp - 0x668]
add edx, 1
mov dword [ebp - 0x668], edx
cmp dword [ebp - 0x668], 5
jge 0x4b64e1
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x668]
mov dword [ebp - 0x1c], eax
jmp 0x4b64bb
cmp dword [ebp - 0x1c], 0
jge 0x4b64ef
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 0x4b6507
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4b6541
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x66c], eax
mov eax, dword [ebp - 0x66c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4b6533
jmp 0x4b6541
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x66c]
mov dword [ebp - 0x1c], edx
jmp 0x4b6507
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x670], 0
jmp 0x4b6565
mov ecx, dword [ebp - 0x670]
add ecx, 1
mov dword [ebp - 0x670], ecx
cmp dword [ebp - 0x670], 3
jge 0x4b65b2
mov eax, dword [ebp - 0x670]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4b6594
mov eax, dword [ebp - 0x670]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4b65a4
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x670]
mov dword [ebp - 0x1c], edx
jmp 0x4b65b0
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x670]
mov dword [ebp - 0x1c], eax
jmp 0x4b6556
mov dword [ebp - 0x674], 0
jmp 0x4b65cd
mov ecx, dword [ebp - 0x674]
add ecx, 1
mov dword [ebp - 0x674], ecx
cmp dword [ebp - 0x674], 8
jge 0x4b661a
cmp dword [ebp - 0x1c], 0
jge 0x4b65e4
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 0x4b65fa
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x678], 0xfa
lea edx, [ebp - 0x678]
push edx
lea eax, [ebp - 0x870]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4b65be
mov dword [ebp - 0x874], 0
jmp 0x4b6635
mov ecx, dword [ebp - 0x874]
add ecx, 1
mov dword [ebp - 0x874], ecx
cmp dword [ebp - 0x874], 2
jge 0x4b6682
mov eax, dword [ebp - 0x874]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4b6664
mov eax, dword [ebp - 0x874]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4b6674
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x874]
mov dword [ebp - 0x1c], edx
jmp 0x4b6680
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x874]
mov dword [ebp - 0x1c], eax
jmp 0x4b6626
mov dword [ebp - 0x878], 0
jmp 0x4b669d
mov ecx, dword [ebp - 0x878]
add ecx, 1
mov dword [ebp - 0x878], ecx
cmp dword [ebp - 0x878], 5
jge 0x4b66ea
mov eax, dword [ebp - 0x878]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4b66cc
mov eax, dword [ebp - 0x878]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4b66dc
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x878]
mov dword [ebp - 0x1c], edx
jmp 0x4b66e8
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x878]
mov dword [ebp - 0x1c], eax
jmp 0x4b668e
mov dword [ebp - 0x87c], 0
jmp 0x4b6705
mov ecx, dword [ebp - 0x87c]
add ecx, 1
mov dword [ebp - 0x87c], ecx
cmp dword [ebp - 0x87c], 4
jge 0x4b6752
mov eax, dword [ebp - 0x87c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4b6734
mov eax, dword [ebp - 0x87c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4b6744
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x87c]
mov dword [ebp - 0x1c], edx
jmp 0x4b6750
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x87c]
mov dword [ebp - 0x1c], eax
jmp 0x4b66f6
mov dword [ebp - 4], 0
mov dword [ebp - 0x880], 0xffffffff
mov dword [ebp - 0x884], 0
jmp 0x4b677e
mov ecx, dword [ebp - 0x884]
add ecx, 1
mov dword [ebp - 0x884], ecx
cmp dword [ebp - 0x884], 8
jge 0x4b67b0
mov eax, dword [ebp - 0x884]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4b67a5
mov edx, dword [ebp - 0x880]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4b676f
mov dword [ebp - 4], 0xfffffffe
jmp 0x4b67d0
mov dword [ebp - 0x888], 0
jmp 0x4b67eb
mov edx, dword [ebp - 0x888]
add edx, 1
mov dword [ebp - 0x888], edx
cmp dword [ebp - 0x888], 5
jge 0x4b6802
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x888]
mov dword [ebp - 0x1c], eax
jmp 0x4b67dc
cmp dword [ebp - 0x1c], 0
jge 0x4b6810
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 0x4b6828
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x88c], 0
jmp 0x4b6843
mov edx, dword [ebp - 0x88c]
add edx, 1
mov dword [ebp - 0x88c], edx
cmp dword [ebp - 0x88c], 0
jge 0x4b685a
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x88c]
mov dword [ebp - 0x1c], eax
jmp 0x4b6834
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4b686c
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 0x4b6884
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x890], 0
jmp 0x4b689f
mov edx, dword [ebp - 0x890]
add edx, 1
mov dword [ebp - 0x890], edx
cmp dword [ebp - 0x890], 4
jge 0x4b68b6
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x890]
mov dword [ebp - 0x1c], eax
jmp 0x4b6890
cmp dword [ebp - 0x1c], 0
jge 0x4b68c4
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 0x4b68dc
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x894], 0
jmp 0x4b68f7
mov edx, dword [ebp - 0x894]
add edx, 1
mov dword [ebp - 0x894], edx
cmp dword [ebp - 0x894], 1
jge 0x4b6938
cmp dword [ebp - 0x1c], 0
jge 0x4b690e
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 0x4b6924
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa90]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4b68e8
mov dword [ebp - 0xa94], 0
jmp 0x4b6953
mov eax, dword [ebp - 0xa94]
add eax, 1
mov dword [ebp - 0xa94], eax
cmp dword [ebp - 0xa94], 0
jge 0x4b6994
cmp dword [ebp - 0x1c], 0
jge 0x4b696a
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 0x4b6980
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc90]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4b6944
mov dword [ebp - 0xc94], 0
jmp 0x4b69af
mov eax, dword [ebp - 0xc94]
add eax, 1
mov dword [ebp - 0xc94], eax
cmp dword [ebp - 0xc94], 2
jge 0x4b69c6
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0xc94]
mov dword [ebp - 0x1c], ecx
jmp 0x4b69a0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4b69d8
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 0x4b69f0
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc98], 0
jmp 0x4b6a0b
mov edx, dword [ebp - 0xc98]
add edx, 1
mov dword [ebp - 0xc98], edx
cmp dword [ebp - 0xc98], 2
jge 0x4b6a58
cmp dword [ebp - 0x1c], 0
jge 0x4b6a22
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 0x4b6a38
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc9c], 0xfa
lea edx, [ebp - 0xc9c]
push edx
lea eax, [ebp - 0xe98]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4b69fc
mov ecx, 1
test ecx, ecx
je 0x4b6a92
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe9c], eax
mov eax, dword [ebp - 0xe9c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4b6a84
jmp 0x4b6a92
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xe9c]
mov dword [ebp - 0x1c], edx
jmp 0x4b6a58
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 1
mov dword [ebp - 0xea0], 0xffffffff
mov dword [ebp - 0xea4], 0
jmp 0x4b6ac7
mov ecx, dword [ebp - 0xea4]
add ecx, 1
mov dword [ebp - 0xea4], ecx
cmp dword [ebp - 0xea4], 3
jge 0x4b6af9
mov eax, dword [ebp - 0xea4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4b6aee
mov edx, dword [ebp - 0xea0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4b6ab8
mov dword [ebp - 4], 0xfffffffe
jmp 0x4b6b19
mov dword [ebp - 0xea8], 0
jmp 0x4b6b34
mov edx, dword [ebp - 0xea8]
add edx, 1
mov dword [ebp - 0xea8], edx
cmp dword [ebp - 0xea8], 2
jge 0x4b6b75
cmp dword [ebp - 0x1c], 0
jge 0x4b6b4b
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 0x4b6b61
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x10a0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4b6b25
mov eax, 1
test eax, eax
je 0x4b6baf
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x10a4], eax
mov eax, dword [ebp - 0x10a4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4b6ba1
jmp 0x4b6baf
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x10a4]
mov dword [ebp - 0x1c], edx
jmp 0x4b6b75
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10a8], 0
jmp 0x4b6bd3
mov ecx, dword [ebp - 0x10a8]
add ecx, 1
mov dword [ebp - 0x10a8], ecx
cmp dword [ebp - 0x10a8], 2
jge 0x4b6c20
mov eax, dword [ebp - 0x10a8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4b6c02
mov eax, dword [ebp - 0x10a8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4b6c12
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x10a8]
mov dword [ebp - 0x1c], edx
jmp 0x4b6c1e
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x10a8]
mov dword [ebp - 0x1c], eax
jmp 0x4b6bc4
mov dword [ebp - 0x10ac], 0
jmp 0x4b6c3b
mov ecx, dword [ebp - 0x10ac]
add ecx, 1
mov dword [ebp - 0x10ac], ecx
cmp dword [ebp - 0x10ac], 3
jge 0x4b6c52
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x10ac]
mov dword [ebp - 0x1c], edx
jmp 0x4b6c2c
cmp dword [ebp - 0x1c], 0
jge 0x4b6c60
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 0x4b6c78
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10b0], 0
jmp 0x4b6c93
mov edx, dword [ebp - 0x10b0]
add edx, 1
mov dword [ebp - 0x10b0], edx
cmp dword [ebp - 0x10b0], 4
jge 0x4b6caa
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x10b0]
mov dword [ebp - 0x1c], eax
jmp 0x4b6c84
cmp dword [ebp - 0x1c], 0
jge 0x4b6cb8
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 0x4b6cd0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10b4], 0
jmp 0x4b6ceb
mov edx, dword [ebp - 0x10b4]
add edx, 1
mov dword [ebp - 0x10b4], edx
cmp dword [ebp - 0x10b4], 3
jge 0x4b6d02
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x10b4]
mov dword [ebp - 0x1c], eax
jmp 0x4b6cdc
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4b6d14
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 0x4b6d2c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10b8], 0
jmp 0x4b6d47
mov edx, dword [ebp - 0x10b8]
add edx, 1
mov dword [ebp - 0x10b8], edx
cmp dword [ebp - 0x10b8], 4
jge 0x4b6d94
mov eax, dword [ebp - 0x10b8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4b6d76
mov eax, dword [ebp - 0x10b8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4b6d86
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x10b8]
mov dword [ebp - 0x1c], edx
jmp 0x4b6d92
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x10b8]
mov dword [ebp - 0x1c], eax
jmp 0x4b6d38
mov dword [ebp - 0x10bc], 0
jmp 0x4b6daf
mov ecx, dword [ebp - 0x10bc]
add ecx, 1
mov dword [ebp - 0x10bc], ecx
cmp dword [ebp - 0x10bc], 0
jge 0x4b6dc6
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x10bc]
mov dword [ebp - 0x1c], edx
jmp 0x4b6da0
cmp dword [ebp - 0x1c], 0
jge 0x4b6dd4
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 0x4b6dec
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10c0], 0
jmp 0x4b6e07
mov edx, dword [ebp - 0x10c0]
add edx, 1
mov dword [ebp - 0x10c0], edx
cmp dword [ebp - 0x10c0], 3
jge 0x4b6e1e
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x10c0]
mov dword [ebp - 0x1c], eax
jmp 0x4b6df8
cmp dword [ebp - 0x1c], 0
jge 0x4b6e2c
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 0x4b6e44
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10c4], 0
jmp 0x4b6e5f
cmp dword [ebp - 0x10c4], 4
jge 0x4b6eac