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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x512098
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x2904
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x38], 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 0x47eee9
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x2e
jge 0x47ef27
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x47ef0f
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x47ef1c
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
jmp 0x47ef25
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
jmp 0x47eee0
mov dword [ebp - 0x24], 0
jmp 0x47ef39
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], 0xd
jge 0x47ef4a
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edx
jmp 0x47ef30
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x47ef5c
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 0x47ef74
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], 0
jmp 0x47ef86
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 0x3e
jge 0x47ef97
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
jmp 0x47ef7d
cmp dword [ebp - 0x1c], 0
jge 0x47efa5
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 0x47efbd
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2c], 0
jmp 0x47efcf
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
cmp dword [ebp - 0x2c], 0x1e
jge 0x47efe0
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
jmp 0x47efc6
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x47eff2
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 0x47f00a
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x47f03b
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 0x47f030
jmp 0x47f03b
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x30]
mov dword [ebp - 0x1c], edx
jmp 0x47f00a
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x34], 0
jmp 0x47f056
mov ecx, dword [ebp - 0x34]
add ecx, 1
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x34], 7
jge 0x47f094
cmp dword [ebp - 0x1c], 0
jge 0x47f06a
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 0x47f080
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x230]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x47f04d
mov dword [ebp - 0x234], 0
jmp 0x47f0af
mov eax, dword [ebp - 0x234]
add eax, 1
mov dword [ebp - 0x234], eax
cmp dword [ebp - 0x234], 0xa
jge 0x47f0c6
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x234]
mov dword [ebp - 0x1c], ecx
jmp 0x47f0a0
cmp dword [ebp - 0x1c], 0
jge 0x47f0d4
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 0x47f0ec
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x238], 0
jmp 0x47f107
mov edx, dword [ebp - 0x238]
add edx, 1
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 7
jge 0x47f148
cmp dword [ebp - 0x1c], 0
jge 0x47f11e
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 0x47f134
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x430]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x47f0f8
mov dword [ebp - 4], 0
mov dword [ebp - 0x434], 0xffffffff
mov dword [ebp - 0x438], 0
jmp 0x47f174
mov eax, dword [ebp - 0x438]
add eax, 1
mov dword [ebp - 0x438], eax
cmp dword [ebp - 0x438], 2
jge 0x47f1a6
mov eax, dword [ebp - 0x438]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x47f19b
mov edx, dword [ebp - 0x434]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x47f165
mov dword [ebp - 4], 0xfffffffe
jmp 0x47f1c6
mov dword [ebp - 0x43c], 0
jmp 0x47f1e1
mov edx, dword [ebp - 0x43c]
add edx, 1
mov dword [ebp - 0x43c], edx
cmp dword [ebp - 0x43c], 2
jge 0x47f22e
mov eax, dword [ebp - 0x43c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x47f210
mov eax, dword [ebp - 0x43c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x47f220
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x43c]
mov dword [ebp - 0x1c], edx
jmp 0x47f22c
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x43c]
mov dword [ebp - 0x1c], eax
jmp 0x47f1d2
mov dword [ebp - 4], 1
mov dword [ebp - 0x440], 0xffffffff
mov dword [ebp - 0x444], 0
jmp 0x47f25a
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
cmp dword [ebp - 0x444], 2
jge 0x47f28c
mov eax, dword [ebp - 0x444]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x47f281
mov edx, dword [ebp - 0x440]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x47f24b
mov dword [ebp - 4], 0xfffffffe
jmp 0x47f2ac
mov dword [ebp - 0x448], 0
jmp 0x47f2c7
mov edx, dword [ebp - 0x448]
add edx, 1
mov dword [ebp - 0x448], edx
cmp dword [ebp - 0x448], 6
jge 0x47f314
cmp dword [ebp - 0x1c], 0
jge 0x47f2de
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 0x47f2f4
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x44c], 0xfa
lea edx, [ebp - 0x44c]
push edx
lea eax, [ebp - 0x648]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x47f2b8
mov dword [ebp - 0x64c], 0
jmp 0x47f32f
mov ecx, dword [ebp - 0x64c]
add ecx, 1
mov dword [ebp - 0x64c], ecx
cmp dword [ebp - 0x64c], 0
jge 0x47f370
cmp dword [ebp - 0x1c], 0
jge 0x47f346
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 0x47f35c
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x848]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x47f320
mov eax, 1
test eax, eax
je 0x47f3aa
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x84c], eax
mov eax, dword [ebp - 0x84c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x47f39c
jmp 0x47f3aa
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x84c]
mov dword [ebp - 0x1c], edx
jmp 0x47f370
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x850], 0
jmp 0x47f3ce
mov ecx, dword [ebp - 0x850]
add ecx, 1
mov dword [ebp - 0x850], ecx
cmp dword [ebp - 0x850], 5
jge 0x47f41b
cmp dword [ebp - 0x1c], 0
jge 0x47f3e5
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 0x47f3fb
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x854], 0xfa
lea edx, [ebp - 0x854]
push edx
lea eax, [ebp - 0xa50]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x47f3bf
mov dword [ebp - 0xa54], 0
jmp 0x47f436
mov ecx, dword [ebp - 0xa54]
add ecx, 1
mov dword [ebp - 0xa54], ecx
cmp dword [ebp - 0xa54], 4
jge 0x47f44d
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xa54]
mov dword [ebp - 0x1c], edx
jmp 0x47f427
cmp dword [ebp - 0x1c], 0
jge 0x47f45b
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 0x47f473
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa58], 0
jmp 0x47f48e
mov edx, dword [ebp - 0xa58]
add edx, 1
mov dword [ebp - 0xa58], edx
cmp dword [ebp - 0xa58], 4
jge 0x47f4db
cmp dword [ebp - 0x1c], 0
jge 0x47f4a5
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 0x47f4bb
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xa5c], 0xfa
lea edx, [ebp - 0xa5c]
push edx
lea eax, [ebp - 0xc58]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x47f47f
mov dword [ebp - 0xc5c], 0
jmp 0x47f4f6
mov ecx, dword [ebp - 0xc5c]
add ecx, 1
mov dword [ebp - 0xc5c], ecx
cmp dword [ebp - 0xc5c], 2
jge 0x47f543
cmp dword [ebp - 0x1c], 0
jge 0x47f50d
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 0x47f523
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc60], 0xfa
lea edx, [ebp - 0xc60]
push edx
lea eax, [ebp - 0xe58]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x47f4e7
mov dword [ebp - 0xe5c], 0
jmp 0x47f55e
mov ecx, dword [ebp - 0xe5c]
add ecx, 1
mov dword [ebp - 0xe5c], ecx
cmp dword [ebp - 0xe5c], 6
jge 0x47f575
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xe5c]
mov dword [ebp - 0x1c], edx
jmp 0x47f54f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x47f587
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 0x47f59f
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe60], 0
jmp 0x47f5ba
mov edx, dword [ebp - 0xe60]
add edx, 1
mov dword [ebp - 0xe60], edx
cmp dword [ebp - 0xe60], 8
jge 0x47f5fb
cmp dword [ebp - 0x1c], 0
jge 0x47f5d1
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 0x47f5e7
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1058]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x47f5ab
mov dword [ebp - 0x105c], 0
jmp 0x47f616
mov eax, dword [ebp - 0x105c]
add eax, 1
mov dword [ebp - 0x105c], eax
cmp dword [ebp - 0x105c], 6
jge 0x47f62d
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x105c]
mov dword [ebp - 0x1c], ecx
jmp 0x47f607
cmp dword [ebp - 0x1c], 0
jge 0x47f63b
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 0x47f653
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x47f68d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1060], eax
mov eax, dword [ebp - 0x1060]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x47f67f
jmp 0x47f68d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1060]
mov dword [ebp - 0x1c], edx
jmp 0x47f653
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1064], 0
jmp 0x47f6ae
mov ecx, dword [ebp - 0x1064]
add ecx, 1
mov dword [ebp - 0x1064], ecx
cmp dword [ebp - 0x1064], 8
jge 0x47f6ef
cmp dword [ebp - 0x1c], 0
jge 0x47f6c5
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 0x47f6db
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1260]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x47f69f
mov dword [ebp - 0x1264], 0
jmp 0x47f70a
mov eax, dword [ebp - 0x1264]
add eax, 1
mov dword [ebp - 0x1264], eax
cmp dword [ebp - 0x1264], 1
jge 0x47f757
mov eax, dword [ebp - 0x1264]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x47f739
mov eax, dword [ebp - 0x1264]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x47f749
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1264]
mov dword [ebp - 0x1c], edx
jmp 0x47f755
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1264]
mov dword [ebp - 0x1c], eax
jmp 0x47f6fb
mov dword [ebp - 0x1268], 0
jmp 0x47f772
mov ecx, dword [ebp - 0x1268]
add ecx, 1
mov dword [ebp - 0x1268], ecx
cmp dword [ebp - 0x1268], 2
jge 0x47f789
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x1268]
mov dword [ebp - 0x1c], edx
jmp 0x47f763
cmp dword [ebp - 0x1c], 0
jge 0x47f797
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 0x47f7af
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x126c], 0
jmp 0x47f7ca
mov edx, dword [ebp - 0x126c]
add edx, 1
mov dword [ebp - 0x126c], edx
cmp dword [ebp - 0x126c], 4
jge 0x47f817
mov eax, dword [ebp - 0x126c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x47f7f9
mov eax, dword [ebp - 0x126c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x47f809
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x126c]
mov dword [ebp - 0x1c], edx
jmp 0x47f815
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x126c]
mov dword [ebp - 0x1c], eax
jmp 0x47f7bb
mov dword [ebp - 4], 2
mov dword [ebp - 0x1270], 0xffffffff
mov dword [ebp - 0x1274], 0
jmp 0x47f843
mov ecx, dword [ebp - 0x1274]
add ecx, 1
mov dword [ebp - 0x1274], ecx
cmp dword [ebp - 0x1274], 1
jge 0x47f875
mov eax, dword [ebp - 0x1274]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x47f86a
mov edx, dword [ebp - 0x1270]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x47f834
mov dword [ebp - 4], 0xfffffffe
jmp 0x47f895
mov edx, 1
test edx, edx
je 0x47f8cf
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1278], eax
mov eax, dword [ebp - 0x1278]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x47f8c1
jmp 0x47f8cf
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1278]
mov dword [ebp - 0x1c], edx
jmp 0x47f895
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x127c], 0
jmp 0x47f8f3
mov ecx, dword [ebp - 0x127c]
add ecx, 1
mov dword [ebp - 0x127c], ecx
cmp dword [ebp - 0x127c], 1
jge 0x47f940
mov eax, dword [ebp - 0x127c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x47f922
mov eax, dword [ebp - 0x127c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x47f932
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x127c]
mov dword [ebp - 0x1c], edx
jmp 0x47f93e
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x127c]
mov dword [ebp - 0x1c], eax
jmp 0x47f8e4
mov dword [ebp - 0x1280], 0
jmp 0x47f95b
mov ecx, dword [ebp - 0x1280]
add ecx, 1
mov dword [ebp - 0x1280], ecx
cmp dword [ebp - 0x1280], 4
jge 0x47f972
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x1280]
mov dword [ebp - 0x1c], edx
jmp 0x47f94c
cmp dword [ebp - 0x1c], 0
jge 0x47f980
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 0x47f998
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x47f9d2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1284], eax
mov eax, dword [ebp - 0x1284]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x47f9c4
jmp 0x47f9d2
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1284]
mov dword [ebp - 0x1c], edx
jmp 0x47f998
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1288], 0
jmp 0x47f9f6
mov ecx, dword [ebp - 0x1288]
add ecx, 1
mov dword [ebp - 0x1288], ecx
cmp dword [ebp - 0x1288], 6
jge 0x47fa37
cmp dword [ebp - 0x1c], 0
jge 0x47fa0d
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 0x47fa23
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1480]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x47f9e7
mov dword [ebp - 4], 3
mov dword [ebp - 0x1484], 0xffffffff
mov dword [ebp - 0x1488], 0
jmp 0x47fa63
mov eax, dword [ebp - 0x1488]
add eax, 1
mov dword [ebp - 0x1488], eax
cmp dword [ebp - 0x1488], 2
jge 0x47fa95
mov eax, dword [ebp - 0x1488]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x47fa8a
mov edx, dword [ebp - 0x1484]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x47fa54
mov dword [ebp - 4], 0xfffffffe
jmp 0x47fab5
mov dword [ebp - 4], 4
mov dword [ebp - 0x148c], 0xffffffff
mov dword [ebp - 0x1490], 0
jmp 0x47fae1
mov edx, dword [ebp - 0x1490]
add edx, 1
mov dword [ebp - 0x1490], edx
cmp dword [ebp - 0x1490], 5
jge 0x47fb13
mov eax, dword [ebp - 0x1490]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x47fb08
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 0x47fad2
mov dword [ebp - 4], 0xfffffffe
jmp 0x47fb33
mov dword [ebp - 0x1494], 0
jmp 0x47fb4e
mov edx, dword [ebp - 0x1494]
add edx, 1
mov dword [ebp - 0x1494], edx
cmp dword [ebp - 0x1494], 7
jge 0x47fb9b
cmp dword [ebp - 0x1c], 0
jge 0x47fb65
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 0x47fb7b
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1498], 0xfa
lea edx, [ebp - 0x1498]
push edx
lea eax, [ebp - 0x1690]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x47fb3f
mov dword [ebp - 0x1694], 0
jmp 0x47fbb6
mov ecx, dword [ebp - 0x1694]
add ecx, 1
mov dword [ebp - 0x1694], ecx
cmp dword [ebp - 0x1694], 1
jge 0x47fbcd
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x1694]
mov dword [ebp - 0x1c], edx
jmp 0x47fba7
cmp dword [ebp - 0x1c], 0
jge 0x47fbdb
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 0x47fbf3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x47fc2d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1698], eax
mov eax, dword [ebp - 0x1698]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x47fc1f
jmp 0x47fc2d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1698]
mov dword [ebp - 0x1c], edx
jmp 0x47fbf3
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x169c], 0
jmp 0x47fc51
mov ecx, dword [ebp - 0x169c]
add ecx, 1
mov dword [ebp - 0x169c], ecx
cmp dword [ebp - 0x169c], 0
jge 0x47fc68
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x169c]
mov dword [ebp - 0x1c], edx
jmp 0x47fc42
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x47fc7a
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 0x47fc92
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0x16a0], 0xffffffff
mov dword [ebp - 0x16a4], 0
jmp 0x47fcbe
mov edx, dword [ebp - 0x16a4]
add edx, 1
mov dword [ebp - 0x16a4], edx
cmp dword [ebp - 0x16a4], 1
jge 0x47fcf0
mov eax, dword [ebp - 0x16a4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x47fce5
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 0x47fcaf
mov dword [ebp - 4], 0xfffffffe
jmp 0x47fd10
mov dword [ebp - 0x16a8], 0
jmp 0x47fd2b
mov edx, dword [ebp - 0x16a8]
add edx, 1
mov dword [ebp - 0x16a8], edx
cmp dword [ebp - 0x16a8], 1
jge 0x47fd78
cmp dword [ebp - 0x1c], 0
jge 0x47fd42
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 0x47fd58
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x16ac], 0xfa
lea edx, [ebp - 0x16ac]
push edx
lea eax, [ebp - 0x18a8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x47fd1c
mov ecx, 1
test ecx, ecx
je 0x47fdb2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18ac], eax
mov eax, dword [ebp - 0x18ac]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x47fda4
jmp 0x47fdb2
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18ac]
mov dword [ebp - 0x1c], edx
jmp 0x47fd78
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18b0], 0
jmp 0x47fdd6
mov ecx, dword [ebp - 0x18b0]
add ecx, 1
mov dword [ebp - 0x18b0], ecx
cmp dword [ebp - 0x18b0], 1
jge 0x47fe23
mov eax, dword [ebp - 0x18b0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x47fe05
mov eax, dword [ebp - 0x18b0]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x47fe15
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18b0]
mov dword [ebp - 0x1c], edx
jmp 0x47fe21
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x18b0]
mov dword [ebp - 0x1c], eax
jmp 0x47fdc7
mov ecx, 1
test ecx, ecx
je 0x47fe5d
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 0x47fe4f
jmp 0x47fe5d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18b4]
mov dword [ebp - 0x1c], edx
jmp 0x47fe23
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18b8], 0
jmp 0x47fe81
mov ecx, dword [ebp - 0x18b8]
add ecx, 1
mov dword [ebp - 0x18b8], ecx
cmp dword [ebp - 0x18b8], 4
jge 0x47fece
mov eax, dword [ebp - 0x18b8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x47feb0
mov eax, dword [ebp - 0x18b8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x47fec0
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18b8]
mov dword [ebp - 0x1c], edx
jmp 0x47fecc
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x18b8]
mov dword [ebp - 0x1c], eax
jmp 0x47fe72
mov dword [ebp - 4], 6
mov dword [ebp - 0x18bc], 0xffffffff
mov dword [ebp - 0x18c0], 0
jmp 0x47fefa
mov ecx, dword [ebp - 0x18c0]
add ecx, 1
mov dword [ebp - 0x18c0], ecx
cmp dword [ebp - 0x18c0], 2
jge 0x47ff2c
mov eax, dword [ebp - 0x18c0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x47ff21
mov edx, dword [ebp - 0x18bc]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x47feeb
mov dword [ebp - 4], 0xfffffffe
jmp 0x47ff4c
mov dword [ebp - 0x18c4], 0
jmp 0x47ff67
mov edx, dword [ebp - 0x18c4]
add edx, 1
mov dword [ebp - 0x18c4], edx
cmp dword [ebp - 0x18c4], 1
jge 0x47ffb4
mov eax, dword [ebp - 0x18c4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x47ff96
mov eax, dword [ebp - 0x18c4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x47ffa6
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18c4]
mov dword [ebp - 0x1c], edx
jmp 0x47ffb2
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x18c4]
mov dword [ebp - 0x1c], eax
jmp 0x47ff58
mov dword [ebp - 0x18c8], 0
jmp 0x47ffcf
mov ecx, dword [ebp - 0x18c8]
add ecx, 1
mov dword [ebp - 0x18c8], ecx
cmp dword [ebp - 0x18c8], 3
jge 0x47ffe6
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18c8]
mov dword [ebp - 0x1c], edx
jmp 0x47ffc0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x47fff8
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 0x480010
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x48004a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18cc], eax
mov eax, dword [ebp - 0x18cc]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48003c
jmp 0x48004a
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18cc]
mov dword [ebp - 0x1c], edx
jmp 0x480010
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x48008a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18d0], eax
mov eax, dword [ebp - 0x18d0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48007c
jmp 0x48008a
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18d0]
mov dword [ebp - 0x1c], edx
jmp 0x480050
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4800ca
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18d4], eax
mov eax, dword [ebp - 0x18d4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4800bc
jmp 0x4800ca
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18d4]
mov dword [ebp - 0x1c], edx
jmp 0x480090
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18d8], 0
jmp 0x4800eb
mov ecx, dword [ebp - 0x18d8]
add ecx, 1
mov dword [ebp - 0x18d8], ecx
cmp dword [ebp - 0x18d8], 0
jge 0x480102
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18d8]
mov dword [ebp - 0x1c], edx
jmp 0x4800dc
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x480114
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 0x48012c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18dc], 0
jmp 0x480147
mov edx, dword [ebp - 0x18dc]
add edx, 1
mov dword [ebp - 0x18dc], edx
cmp dword [ebp - 0x18dc], 3
jge 0x48015e
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x18dc]
mov dword [ebp - 0x1c], eax
jmp 0x480138
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x480170
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 0x480188
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18e0], 0
jmp 0x4801a3