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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x5140d8
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x1e68
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 0x4e1f69
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xa
jge 0x4e1fa7
cmp dword [ebp - 0x1c], 0
jge 0x4e1f7d
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 0x4e1f93
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x220]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4e1f60
mov dword [ebp - 0x224], 0
jmp 0x4e1fc2
mov eax, dword [ebp - 0x224]
add eax, 1
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0x14
jge 0x4e200f
cmp dword [ebp - 0x1c], 0
jge 0x4e1fd9
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 0x4e1fef
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x228], 0xfa
lea edx, [ebp - 0x228]
push edx
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4e1fb3
mov dword [ebp - 0x424], 0
jmp 0x4e202a
mov ecx, dword [ebp - 0x424]
add ecx, 1
mov dword [ebp - 0x424], ecx
cmp dword [ebp - 0x424], 0x1c
jge 0x4e206b
cmp dword [ebp - 0x1c], 0
jge 0x4e2041
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 0x4e2057
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x620]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4e201b
mov dword [ebp - 0x624], 0
jmp 0x4e2086
mov eax, dword [ebp - 0x624]
add eax, 1
mov dword [ebp - 0x624], eax
cmp dword [ebp - 0x624], 0xd
jge 0x4e209d
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x624]
mov dword [ebp - 0x1c], ecx
jmp 0x4e2077
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4e20af
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 0x4e20c7
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x628], 0
jmp 0x4e20e2
mov edx, dword [ebp - 0x628]
add edx, 1
mov dword [ebp - 0x628], edx
cmp dword [ebp - 0x628], 5
jge 0x4e212f
mov eax, dword [ebp - 0x628]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4e2111
mov eax, dword [ebp - 0x628]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4e2121
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x628]
mov dword [ebp - 0x1c], edx
jmp 0x4e212d
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x628]
mov dword [ebp - 0x1c], eax
jmp 0x4e20d3
mov dword [ebp - 0x62c], 0
jmp 0x4e214a
mov ecx, dword [ebp - 0x62c]
add ecx, 1
mov dword [ebp - 0x62c], ecx
cmp dword [ebp - 0x62c], 0x1f
jge 0x4e2197
cmp dword [ebp - 0x1c], 0
jge 0x4e2161
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 0x4e2177
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x630], 0xfa
lea edx, [ebp - 0x630]
push edx
lea eax, [ebp - 0x828]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4e213b
mov dword [ebp - 0x82c], 0
jmp 0x4e21b2
mov ecx, dword [ebp - 0x82c]
add ecx, 1
mov dword [ebp - 0x82c], ecx
cmp dword [ebp - 0x82c], 0x14
jge 0x4e21c9
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x82c]
mov dword [ebp - 0x1c], edx
jmp 0x4e21a3
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4e21db
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 0x4e21f3
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x830], 0
jmp 0x4e220e
mov edx, dword [ebp - 0x830]
add edx, 1
mov dword [ebp - 0x830], edx
cmp dword [ebp - 0x830], 4
jge 0x4e225b
cmp dword [ebp - 0x1c], 0
jge 0x4e2225
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 0x4e223b
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x834], 0xfa
lea edx, [ebp - 0x834]
push edx
lea eax, [ebp - 0xa30]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4e21ff
mov dword [ebp - 0xa34], 0
jmp 0x4e2276
mov ecx, dword [ebp - 0xa34]
add ecx, 1
mov dword [ebp - 0xa34], ecx
cmp dword [ebp - 0xa34], 0x10
jge 0x4e228d
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa34]
mov dword [ebp - 0x1c], edx
jmp 0x4e2267
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4e229f
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 0x4e22b7
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0xa38], 0xffffffff
mov dword [ebp - 0xa3c], 0
jmp 0x4e22e3
mov edx, dword [ebp - 0xa3c]
add edx, 1
mov dword [ebp - 0xa3c], edx
cmp dword [ebp - 0xa3c], 0xc
jge 0x4e2315
mov eax, dword [ebp - 0xa3c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4e230a
mov edx, dword [ebp - 0xa38]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4e22d4
mov dword [ebp - 4], 0xfffffffe
jmp 0x4e2335
mov dword [ebp - 0xa40], 0
jmp 0x4e2350
mov edx, dword [ebp - 0xa40]
add edx, 1
mov dword [ebp - 0xa40], edx
cmp dword [ebp - 0xa40], 0xf
jge 0x4e2367
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xa40]
mov dword [ebp - 0x1c], eax
jmp 0x4e2341
cmp dword [ebp - 0x1c], 0
jge 0x4e2375
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 0x4e238d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 1
mov dword [ebp - 0xa44], 0xffffffff
mov dword [ebp - 0xa48], 0
jmp 0x4e23b9
mov edx, dword [ebp - 0xa48]
add edx, 1
mov dword [ebp - 0xa48], edx
cmp dword [ebp - 0xa48], 0xe
jge 0x4e23eb
mov eax, dword [ebp - 0xa48]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4e23e0
mov edx, dword [ebp - 0xa44]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4e23aa
mov dword [ebp - 4], 0xfffffffe
jmp 0x4e240b
mov dword [ebp - 4], 2
mov dword [ebp - 0xa4c], 0xffffffff
mov dword [ebp - 0xa50], 0
jmp 0x4e2437
mov edx, dword [ebp - 0xa50]
add edx, 1
mov dword [ebp - 0xa50], edx
cmp dword [ebp - 0xa50], 8
jge 0x4e2469
mov eax, dword [ebp - 0xa50]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4e245e
mov edx, dword [ebp - 0xa4c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4e2428
mov dword [ebp - 4], 0xfffffffe
jmp 0x4e2489
mov dword [ebp - 0xa54], 0
jmp 0x4e24a4
mov edx, dword [ebp - 0xa54]
add edx, 1
mov dword [ebp - 0xa54], edx
cmp dword [ebp - 0xa54], 8
jge 0x4e24bb
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xa54]
mov dword [ebp - 0x1c], eax
jmp 0x4e2495
cmp dword [ebp - 0x1c], 0
jge 0x4e24c9
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 0x4e24e1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4e251b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xa58], eax
mov eax, dword [ebp - 0xa58]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4e250d
jmp 0x4e251b
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xa58]
mov dword [ebp - 0x1c], edx
jmp 0x4e24e1
mov eax, dword [ebp - 0x1c]
add eax, 0xf
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0xa5c], 0xffffffff
mov dword [ebp - 0xa60], 0
jmp 0x4e2550
mov ecx, dword [ebp - 0xa60]
add ecx, 1
mov dword [ebp - 0xa60], ecx
cmp dword [ebp - 0xa60], 8
jge 0x4e2582
mov eax, dword [ebp - 0xa60]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4e2577
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 0x4e2541
mov dword [ebp - 4], 0xfffffffe
jmp 0x4e25a2
mov dword [ebp - 4], 4
mov dword [ebp - 0xa64], 0xffffffff
mov dword [ebp - 0xa68], 0
jmp 0x4e25ce
mov edx, dword [ebp - 0xa68]
add edx, 1
mov dword [ebp - 0xa68], edx
cmp dword [ebp - 0xa68], 0xa
jge 0x4e2600
mov eax, dword [ebp - 0xa68]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4e25f5
mov edx, dword [ebp - 0xa64]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4e25bf
mov dword [ebp - 4], 0xfffffffe
jmp 0x4e2620
mov edx, 1
test edx, edx
je 0x4e265a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xa6c], eax
mov eax, dword [ebp - 0xa6c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4e264c
jmp 0x4e265a
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xa6c]
mov dword [ebp - 0x1c], edx
jmp 0x4e2620
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa70], 0
jmp 0x4e267e
mov ecx, dword [ebp - 0xa70]
add ecx, 1
mov dword [ebp - 0xa70], ecx
cmp dword [ebp - 0xa70], 7
jge 0x4e2695
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa70]
mov dword [ebp - 0x1c], edx
jmp 0x4e266f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4e26a7
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 0x4e26bf
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa74], 0
jmp 0x4e26da
mov edx, dword [ebp - 0xa74]
add edx, 1
mov dword [ebp - 0xa74], edx
cmp dword [ebp - 0xa74], 6
jge 0x4e271b
cmp dword [ebp - 0x1c], 0
jge 0x4e26f1
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 0x4e2707
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc70]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4e26cb
mov dword [ebp - 0xc74], 0
jmp 0x4e2736
mov eax, dword [ebp - 0xc74]
add eax, 1
mov dword [ebp - 0xc74], eax
cmp dword [ebp - 0xc74], 0
jge 0x4e274d
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0xc74]
mov dword [ebp - 0x1c], ecx
jmp 0x4e2727
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4e275f
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 0x4e2777
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc78], 0
jmp 0x4e2792
mov edx, dword [ebp - 0xc78]
add edx, 1
mov dword [ebp - 0xc78], edx
cmp dword [ebp - 0xc78], 1
jge 0x4e27a9
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xc78]
mov dword [ebp - 0x1c], eax
jmp 0x4e2783
cmp dword [ebp - 0x1c], 0
jge 0x4e27b7
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 0x4e27cf
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4e2809
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc7c], eax
mov eax, dword [ebp - 0xc7c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4e27fb
jmp 0x4e2809
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xc7c]
mov dword [ebp - 0x1c], edx
jmp 0x4e27cf
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc80], 0
jmp 0x4e282d
mov ecx, dword [ebp - 0xc80]
add ecx, 1
mov dword [ebp - 0xc80], ecx
cmp dword [ebp - 0xc80], 7
jge 0x4e286e
cmp dword [ebp - 0x1c], 0
jge 0x4e2844
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 0x4e285a
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xe78]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4e281e
mov dword [ebp - 0xe7c], 0
jmp 0x4e2889
mov eax, dword [ebp - 0xe7c]
add eax, 1
mov dword [ebp - 0xe7c], eax
cmp dword [ebp - 0xe7c], 0
jge 0x4e28a0
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0xe7c]
mov dword [ebp - 0x1c], ecx
jmp 0x4e287a
cmp dword [ebp - 0x1c], 0
jge 0x4e28ae
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 0x4e28c6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe80], 0
jmp 0x4e28e1
mov edx, dword [ebp - 0xe80]
add edx, 1
mov dword [ebp - 0xe80], edx
cmp dword [ebp - 0xe80], 8
jge 0x4e2922
cmp dword [ebp - 0x1c], 0
jge 0x4e28f8
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 0x4e290e
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1078]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4e28d2
mov dword [ebp - 0x107c], 0
jmp 0x4e293d
mov eax, dword [ebp - 0x107c]
add eax, 1
mov dword [ebp - 0x107c], eax
cmp dword [ebp - 0x107c], 1
jge 0x4e298a
cmp dword [ebp - 0x1c], 0
jge 0x4e2954
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 0x4e296a
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1080], 0xfa
lea edx, [ebp - 0x1080]
push edx
lea eax, [ebp - 0x1278]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4e292e
mov dword [ebp - 0x127c], 0
jmp 0x4e29a5
mov ecx, dword [ebp - 0x127c]
add ecx, 1
mov dword [ebp - 0x127c], ecx
cmp dword [ebp - 0x127c], 2
jge 0x4e29f2
cmp dword [ebp - 0x1c], 0
jge 0x4e29bc
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 0x4e29d2
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1280], 0xfa
lea edx, [ebp - 0x1280]
push edx
lea eax, [ebp - 0x1478]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4e2996
mov ecx, 1
test ecx, ecx
je 0x4e2a2c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x147c], eax
mov eax, dword [ebp - 0x147c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4e2a1e
jmp 0x4e2a2c
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x147c]
mov dword [ebp - 0x1c], edx
jmp 0x4e29f2
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4e2a6f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1480], eax
mov eax, dword [ebp - 0x1480]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4e2a61
jmp 0x4e2a6f
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1480]
mov dword [ebp - 0x1c], edx
jmp 0x4e2a35
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1484], 0
jmp 0x4e2a93
mov ecx, dword [ebp - 0x1484]
add ecx, 1
mov dword [ebp - 0x1484], ecx
cmp dword [ebp - 0x1484], 0
jge 0x4e2ae0
cmp dword [ebp - 0x1c], 0
jge 0x4e2aaa
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 0x4e2ac0
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 0x4e2a84
mov dword [ebp - 0x1684], 0
jmp 0x4e2afb
mov ecx, dword [ebp - 0x1684]
add ecx, 1
mov dword [ebp - 0x1684], ecx
cmp dword [ebp - 0x1684], 1
jge 0x4e2b3c
cmp dword [ebp - 0x1c], 0
jge 0x4e2b12
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 0x4e2b28
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1880]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4e2aec
mov dword [ebp - 0x1884], 0
jmp 0x4e2b57
mov eax, dword [ebp - 0x1884]
add eax, 1
mov dword [ebp - 0x1884], eax
cmp dword [ebp - 0x1884], 4
jge 0x4e2b98
cmp dword [ebp - 0x1c], 0
jge 0x4e2b6e
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 0x4e2b84
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1a80]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4e2b48
mov dword [ebp - 0x1a84], 0
jmp 0x4e2bb3
mov eax, dword [ebp - 0x1a84]
add eax, 1
mov dword [ebp - 0x1a84], eax
cmp dword [ebp - 0x1a84], 0
jge 0x4e2c00
cmp dword [ebp - 0x1c], 0
jge 0x4e2bca
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 0x4e2be0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1a88], 0xfa
lea edx, [ebp - 0x1a88]
push edx
lea eax, [ebp - 0x1c80]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4e2ba4
mov dword [ebp - 0x1c84], 0
jmp 0x4e2c1b
mov ecx, dword [ebp - 0x1c84]
add ecx, 1
mov dword [ebp - 0x1c84], ecx
cmp dword [ebp - 0x1c84], 4
jge 0x4e2c5c
cmp dword [ebp - 0x1c], 0
jge 0x4e2c32
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 0x4e2c48
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1e80]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4e2c0c
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x24]
xor ecx, ebp
call fcn.004079a5
mov esp, ebp
pop ebp
ret