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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x513c78
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x24f0
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x24], 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 0x4d4059
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x31
jge 0x4d4097
cmp dword [ebp - 0x1c], 0
jge 0x4d406d
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 0x4d4083
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x220]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4d4050
mov dword [ebp - 0x224], 0
jmp 0x4d40b2
mov eax, dword [ebp - 0x224]
add eax, 1
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0x3a
jge 0x4d40ff
mov eax, dword [ebp - 0x224]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4d40e1
mov eax, dword [ebp - 0x224]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4d40f1
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x224]
mov dword [ebp - 0x1c], edx
jmp 0x4d40fd
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x224]
mov dword [ebp - 0x1c], eax
jmp 0x4d40a3
mov dword [ebp - 0x228], 0
jmp 0x4d411a
mov ecx, dword [ebp - 0x228]
add ecx, 1
mov dword [ebp - 0x228], ecx
cmp dword [ebp - 0x228], 0xe
jge 0x4d4131
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x228]
mov dword [ebp - 0x1c], edx
jmp 0x4d410b
cmp dword [ebp - 0x1c], 0
jge 0x4d413f
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 0x4d4157
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x22c], 0
jmp 0x4d4172
mov edx, dword [ebp - 0x22c]
add edx, 1
mov dword [ebp - 0x22c], edx
cmp dword [ebp - 0x22c], 0x15
jge 0x4d41b3
cmp dword [ebp - 0x1c], 0
jge 0x4d4189
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 0x4d419f
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x428]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4d4163
mov dword [ebp - 0x42c], 0
jmp 0x4d41ce
mov eax, dword [ebp - 0x42c]
add eax, 1
mov dword [ebp - 0x42c], eax
cmp dword [ebp - 0x42c], 0x1f
jge 0x4d421b
mov eax, dword [ebp - 0x42c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4d41fd
mov eax, dword [ebp - 0x42c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4d420d
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x42c]
mov dword [ebp - 0x1c], edx
jmp 0x4d4219
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x42c]
mov dword [ebp - 0x1c], eax
jmp 0x4d41bf
mov ecx, 1
test ecx, ecx
je 0x4d4255
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x430], eax
mov eax, dword [ebp - 0x430]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d4247
jmp 0x4d4255
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x430]
mov dword [ebp - 0x1c], edx
jmp 0x4d421b
mov eax, dword [ebp - 0x1c]
add eax, 0x16
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x434], 0
jmp 0x4d4279
mov ecx, dword [ebp - 0x434]
add ecx, 1
mov dword [ebp - 0x434], ecx
cmp dword [ebp - 0x434], 0x18
jge 0x4d42c6
mov eax, dword [ebp - 0x434]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4d42a8
mov eax, dword [ebp - 0x434]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4d42b8
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x434]
mov dword [ebp - 0x1c], edx
jmp 0x4d42c4
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x434]
mov dword [ebp - 0x1c], eax
jmp 0x4d426a
mov ecx, 1
test ecx, ecx
je 0x4d4300
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x438], eax
mov eax, dword [ebp - 0x438]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d42f2
jmp 0x4d4300
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x438]
mov dword [ebp - 0x1c], edx
jmp 0x4d42c6
mov eax, dword [ebp - 0x1c]
add eax, 0x13
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x43c], 0
jmp 0x4d4324
mov ecx, dword [ebp - 0x43c]
add ecx, 1
mov dword [ebp - 0x43c], ecx
cmp dword [ebp - 0x43c], 5
jge 0x4d4371
mov eax, dword [ebp - 0x43c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4d4353
mov eax, dword [ebp - 0x43c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4d4363
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x43c]
mov dword [ebp - 0x1c], edx
jmp 0x4d436f
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x43c]
mov dword [ebp - 0x1c], eax
jmp 0x4d4315
mov ecx, 1
test ecx, ecx
je 0x4d43ab
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x440], eax
mov eax, dword [ebp - 0x440]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d439d
jmp 0x4d43ab
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x440]
mov dword [ebp - 0x1c], edx
jmp 0x4d4371
mov eax, dword [ebp - 0x1c]
add eax, 5
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x444], 0
jmp 0x4d43cf
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
cmp dword [ebp - 0x444], 0xb
jge 0x4d43e6
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x444]
mov dword [ebp - 0x1c], edx
jmp 0x4d43c0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4d43f8
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 0x4d4410
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x448], 0
jmp 0x4d442b
mov edx, dword [ebp - 0x448]
add edx, 1
mov dword [ebp - 0x448], edx
cmp dword [ebp - 0x448], 7
jge 0x4d4442
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x448]
mov dword [ebp - 0x1c], eax
jmp 0x4d441c
cmp dword [ebp - 0x1c], 0
jge 0x4d4450
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 0x4d4468
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x44c], 0
jmp 0x4d4483
mov edx, dword [ebp - 0x44c]
add edx, 1
mov dword [ebp - 0x44c], edx
cmp dword [ebp - 0x44c], 7
jge 0x4d44d0
cmp dword [ebp - 0x1c], 0
jge 0x4d449a
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 0x4d44b0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x450], 0xfa
lea edx, [ebp - 0x450]
push edx
lea eax, [ebp - 0x648]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4d4474
mov dword [ebp - 0x64c], 0
jmp 0x4d44eb
mov ecx, dword [ebp - 0x64c]
add ecx, 1
mov dword [ebp - 0x64c], ecx
cmp dword [ebp - 0x64c], 1
jge 0x4d4502
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x64c]
mov dword [ebp - 0x1c], edx
jmp 0x4d44dc
cmp dword [ebp - 0x1c], 0
jge 0x4d4510
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 0x4d4528
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x650], 0
jmp 0x4d4543
mov edx, dword [ebp - 0x650]
add edx, 1
mov dword [ebp - 0x650], edx
cmp dword [ebp - 0x650], 4
jge 0x4d455a
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x650]
mov dword [ebp - 0x1c], eax
jmp 0x4d4534
cmp dword [ebp - 0x1c], 0
jge 0x4d4568
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 0x4d4580
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x654], 0
jmp 0x4d459b
mov edx, dword [ebp - 0x654]
add edx, 1
mov dword [ebp - 0x654], edx
cmp dword [ebp - 0x654], 2
jge 0x4d45dc
cmp dword [ebp - 0x1c], 0
jge 0x4d45b2
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 0x4d45c8
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x850]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4d458c
mov dword [ebp - 0x854], 0
jmp 0x4d45f7
mov eax, dword [ebp - 0x854]
add eax, 1
mov dword [ebp - 0x854], eax
cmp dword [ebp - 0x854], 6
jge 0x4d460e
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x854]
mov dword [ebp - 0x1c], ecx
jmp 0x4d45e8
cmp dword [ebp - 0x1c], 0
jge 0x4d461c
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 0x4d4634
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x858], 0xffffffff
mov dword [ebp - 0x85c], 0
jmp 0x4d4660
mov edx, dword [ebp - 0x85c]
add edx, 1
mov dword [ebp - 0x85c], edx
cmp dword [ebp - 0x85c], 0
jge 0x4d4692
mov eax, dword [ebp - 0x85c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4d4687
mov edx, dword [ebp - 0x858]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4d4651
mov dword [ebp - 4], 0xfffffffe
jmp 0x4d46b2
mov dword [ebp - 0x860], 0
jmp 0x4d46cd
mov edx, dword [ebp - 0x860]
add edx, 1
mov dword [ebp - 0x860], edx
cmp dword [ebp - 0x860], 2
jge 0x4d46e4
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x860]
mov dword [ebp - 0x1c], eax
jmp 0x4d46be
cmp dword [ebp - 0x1c], 0
jge 0x4d46f2
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 0x4d470a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x864], 0
jmp 0x4d4725
mov edx, dword [ebp - 0x864]
add edx, 1
mov dword [ebp - 0x864], edx
cmp dword [ebp - 0x864], 2
jge 0x4d473c
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x864]
mov dword [ebp - 0x1c], eax
jmp 0x4d4716
cmp dword [ebp - 0x1c], 0
jge 0x4d474a
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 0x4d4762
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x868], 0
jmp 0x4d477d
mov edx, dword [ebp - 0x868]
add edx, 1
mov dword [ebp - 0x868], edx
cmp dword [ebp - 0x868], 5
jge 0x4d47be
cmp dword [ebp - 0x1c], 0
jge 0x4d4794
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 0x4d47aa
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa60]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4d476e
mov dword [ebp - 0xa64], 0
jmp 0x4d47d9
mov eax, dword [ebp - 0xa64]
add eax, 1
mov dword [ebp - 0xa64], eax
cmp dword [ebp - 0xa64], 7
jge 0x4d47f0
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0xa64]
mov dword [ebp - 0x1c], ecx
jmp 0x4d47ca
cmp dword [ebp - 0x1c], 0
jge 0x4d47fe
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 0x4d4816
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa68], 0
jmp 0x4d4831
mov edx, dword [ebp - 0xa68]
add edx, 1
mov dword [ebp - 0xa68], edx
cmp dword [ebp - 0xa68], 8
jge 0x4d4848
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xa68]
mov dword [ebp - 0x1c], eax
jmp 0x4d4822
cmp dword [ebp - 0x1c], 0
jge 0x4d4856
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 0x4d486e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa6c], 0
jmp 0x4d4889
mov edx, dword [ebp - 0xa6c]
add edx, 1
mov dword [ebp - 0xa6c], edx
cmp dword [ebp - 0xa6c], 0
jge 0x4d48ca
cmp dword [ebp - 0x1c], 0
jge 0x4d48a0
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 0x4d48b6
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc68]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4d487a
mov eax, 1
test eax, eax
je 0x4d4904
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc6c], eax
mov eax, dword [ebp - 0xc6c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d48f6
jmp 0x4d4904
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xc6c]
mov dword [ebp - 0x1c], edx
jmp 0x4d48ca
mov eax, dword [ebp - 0x1c]
add eax, 5
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 1
mov dword [ebp - 0xc70], 0xffffffff
mov dword [ebp - 0xc74], 0
jmp 0x4d4939
mov ecx, dword [ebp - 0xc74]
add ecx, 1
mov dword [ebp - 0xc74], ecx
cmp dword [ebp - 0xc74], 6
jge 0x4d496b
mov eax, dword [ebp - 0xc74]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4d4960
mov edx, dword [ebp - 0xc70]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4d492a
mov dword [ebp - 4], 0xfffffffe
jmp 0x4d498b
mov dword [ebp - 4], 2
mov dword [ebp - 0xc78], 0xffffffff
mov dword [ebp - 0xc7c], 0
jmp 0x4d49b7
mov edx, dword [ebp - 0xc7c]
add edx, 1
mov dword [ebp - 0xc7c], edx
cmp dword [ebp - 0xc7c], 2
jge 0x4d49e9
mov eax, dword [ebp - 0xc7c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4d49de
mov edx, dword [ebp - 0xc78]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4d49a8
mov dword [ebp - 4], 0xfffffffe
jmp 0x4d4a09
mov dword [ebp - 0xc80], 0
jmp 0x4d4a24
mov edx, dword [ebp - 0xc80]
add edx, 1
mov dword [ebp - 0xc80], edx
cmp dword [ebp - 0xc80], 1
jge 0x4d4a65
cmp dword [ebp - 0x1c], 0
jge 0x4d4a3b
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 0x4d4a51
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xe78]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4d4a15
mov dword [ebp - 0xe7c], 0
jmp 0x4d4a80
mov eax, dword [ebp - 0xe7c]
add eax, 1
mov dword [ebp - 0xe7c], eax
cmp dword [ebp - 0xe7c], 6
jge 0x4d4acd
cmp dword [ebp - 0x1c], 0
jge 0x4d4a97
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 0x4d4aad
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xe80], 0xfa
lea edx, [ebp - 0xe80]
push edx
lea eax, [ebp - 0x1078]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4d4a71
mov dword [ebp - 4], 3
mov dword [ebp - 0x107c], 0xffffffff
mov dword [ebp - 0x1080], 0
jmp 0x4d4af9
mov ecx, dword [ebp - 0x1080]
add ecx, 1
mov dword [ebp - 0x1080], ecx
cmp dword [ebp - 0x1080], 3
jge 0x4d4b2b
mov eax, dword [ebp - 0x1080]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4d4b20
mov edx, dword [ebp - 0x107c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4d4aea
mov dword [ebp - 4], 0xfffffffe
jmp 0x4d4b4b
mov dword [ebp - 0x1084], 0
jmp 0x4d4b66
mov edx, dword [ebp - 0x1084]
add edx, 1
mov dword [ebp - 0x1084], edx
cmp dword [ebp - 0x1084], 4
jge 0x4d4b7d
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1084]
mov dword [ebp - 0x1c], eax
jmp 0x4d4b57
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4d4b8f
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 0x4d4ba7
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1088], 0
jmp 0x4d4bc2
mov edx, dword [ebp - 0x1088]
add edx, 1
mov dword [ebp - 0x1088], edx
cmp dword [ebp - 0x1088], 0
jge 0x4d4c03
cmp dword [ebp - 0x1c], 0
jge 0x4d4bd9
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 0x4d4bef
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1280]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4d4bb3
mov dword [ebp - 4], 4
mov dword [ebp - 0x1284], 0xffffffff
mov dword [ebp - 0x1288], 0
jmp 0x4d4c2f
mov eax, dword [ebp - 0x1288]
add eax, 1
mov dword [ebp - 0x1288], eax
cmp dword [ebp - 0x1288], 7
jge 0x4d4c61
mov eax, dword [ebp - 0x1288]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4d4c56
mov edx, dword [ebp - 0x1284]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4d4c20
mov dword [ebp - 4], 0xfffffffe
jmp 0x4d4c81
mov dword [ebp - 0x128c], 0
jmp 0x4d4c9c
mov edx, dword [ebp - 0x128c]
add edx, 1
mov dword [ebp - 0x128c], edx
cmp dword [ebp - 0x128c], 2
jge 0x4d4cb3
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x128c]
mov dword [ebp - 0x1c], eax
jmp 0x4d4c8d
cmp dword [ebp - 0x1c], 0
jge 0x4d4cc1
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 0x4d4cd9
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1290], 0
jmp 0x4d4cf4
mov edx, dword [ebp - 0x1290]
add edx, 1
mov dword [ebp - 0x1290], edx
cmp dword [ebp - 0x1290], 1
jge 0x4d4d35
cmp dword [ebp - 0x1c], 0
jge 0x4d4d0b
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 0x4d4d21
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1488]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4d4ce5
mov dword [ebp - 4], 5
mov dword [ebp - 0x148c], 0xffffffff
mov dword [ebp - 0x1490], 0
jmp 0x4d4d61
mov eax, dword [ebp - 0x1490]
add eax, 1
mov dword [ebp - 0x1490], eax
cmp dword [ebp - 0x1490], 8
jge 0x4d4d93
mov eax, dword [ebp - 0x1490]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4d4d88
mov edx, dword [ebp - 0x148c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4d4d52
mov dword [ebp - 4], 0xfffffffe
jmp 0x4d4db3
mov edx, 1
test edx, edx
je 0x4d4ded
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1494], eax
mov eax, dword [ebp - 0x1494]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d4ddf
jmp 0x4d4ded
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1494]
mov dword [ebp - 0x1c], edx
jmp 0x4d4db3
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1498], 0
jmp 0x4d4e11
mov ecx, dword [ebp - 0x1498]
add ecx, 1
mov dword [ebp - 0x1498], ecx
cmp dword [ebp - 0x1498], 1
jge 0x4d4e5e
cmp dword [ebp - 0x1c], 0
jge 0x4d4e28
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 0x4d4e3e
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x149c], 0xfa
lea edx, [ebp - 0x149c]
push edx
lea eax, [ebp - 0x1698]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4d4e02
mov ecx, 1
test ecx, ecx
je 0x4d4e98
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x169c], eax
mov eax, dword [ebp - 0x169c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d4e8a
jmp 0x4d4e98
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x169c]
mov dword [ebp - 0x1c], edx
jmp 0x4d4e5e
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 6
mov dword [ebp - 0x16a0], 0xffffffff
mov dword [ebp - 0x16a4], 0
jmp 0x4d4ecd
mov ecx, dword [ebp - 0x16a4]
add ecx, 1
mov dword [ebp - 0x16a4], ecx
cmp dword [ebp - 0x16a4], 4
jge 0x4d4eff
mov eax, dword [ebp - 0x16a4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4d4ef4
mov edx, dword [ebp - 0x16a0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4d4ebe
mov dword [ebp - 4], 0xfffffffe
jmp 0x4d4f1f
mov edx, 1
test edx, edx
je 0x4d4f59
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x16a8], eax
mov eax, dword [ebp - 0x16a8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d4f4b
jmp 0x4d4f59
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x16a8]
mov dword [ebp - 0x1c], edx
jmp 0x4d4f1f
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x16ac], 0
jmp 0x4d4f7a
mov ecx, dword [ebp - 0x16ac]
add ecx, 1
mov dword [ebp - 0x16ac], ecx
cmp dword [ebp - 0x16ac], 7
jge 0x4d4f91
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x16ac]
mov dword [ebp - 0x1c], edx
jmp 0x4d4f6b
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4d4fa3
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 0x4d4fbb
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4d4ff5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x16b0], eax
mov eax, dword [ebp - 0x16b0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d4fe7
jmp 0x4d4ff5
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x16b0]
mov dword [ebp - 0x1c], edx
jmp 0x4d4fbb
mov eax, dword [ebp - 0x1c]
add eax, 5
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x16b4], 0
jmp 0x4d5019
mov ecx, dword [ebp - 0x16b4]
add ecx, 1
mov dword [ebp - 0x16b4], ecx
cmp dword [ebp - 0x16b4], 6
jge 0x4d505a
cmp dword [ebp - 0x1c], 0
jge 0x4d5030
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 0x4d5046
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x18b0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4d500a
mov eax, 1
test eax, eax
je 0x4d5094
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18b4], eax
mov eax, dword [ebp - 0x18b4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d5086
jmp 0x4d5094
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18b4]
mov dword [ebp - 0x1c], edx
jmp 0x4d505a
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4d50d4
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18b8], eax
mov eax, dword [ebp - 0x18b8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d50c6
jmp 0x4d50d4
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18b8]
mov dword [ebp - 0x1c], edx
jmp 0x4d509a
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18bc], 0
jmp 0x4d50f8
mov ecx, dword [ebp - 0x18bc]
add ecx, 1
mov dword [ebp - 0x18bc], ecx
cmp dword [ebp - 0x18bc], 4
jge 0x4d5145
cmp dword [ebp - 0x1c], 0
jge 0x4d510f
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 0x4d5125
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18c0], 0xfa
lea edx, [ebp - 0x18c0]
push edx
lea eax, [ebp - 0x1ab8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4d50e9
mov dword [ebp - 0x1abc], 0
jmp 0x4d5160
mov ecx, dword [ebp - 0x1abc]
add ecx, 1
mov dword [ebp - 0x1abc], ecx
cmp dword [ebp - 0x1abc], 1
jge 0x4d5177
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x1abc]
mov dword [ebp - 0x1c], edx
jmp 0x4d5151
cmp dword [ebp - 0x1c], 0
jge 0x4d5185
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 0x4d519d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4d51d7
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1ac0], eax
mov eax, dword [ebp - 0x1ac0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4d51c9
jmp 0x4d51d7
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1ac0]
mov dword [ebp - 0x1c], edx
jmp 0x4d519d
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1ac4], 0
jmp 0x4d51f8
mov ecx, dword [ebp - 0x1ac4]
add ecx, 1
mov dword [ebp - 0x1ac4], ecx
cmp dword [ebp - 0x1ac4], 2
jge 0x4d520f
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1ac4]
mov dword [ebp - 0x1c], edx
jmp 0x4d51e9
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4d5221
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 0x4d5239
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1ac8], 0
jmp 0x4d5254
cmp dword [ebp - 0x1ac8], 2
jge 0x4d526b
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1ac8]
mov dword [ebp - 0x1c], eax
jmp 0x4d5245
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4d527d