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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x5124a8
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x34fc
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x2c], 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 0x48b549
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x32
jge 0x48b587
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48b56f
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48b57c
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
jmp 0x48b585
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
jmp 0x48b540
mov dword [ebp - 0x24], 0
jmp 0x48b599
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], 0x1a
jge 0x48b5dd
cmp dword [ebp - 0x1c], 0
jge 0x48b5ad
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 0x48b5c3
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x28], 0xfa
lea edx, [ebp - 0x28]
push edx
lea eax, [ebp - 0x228]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48b590
mov dword [ebp - 0x22c], 0
jmp 0x48b5f8
mov ecx, dword [ebp - 0x22c]
add ecx, 1
mov dword [ebp - 0x22c], ecx
cmp dword [ebp - 0x22c], 0
jge 0x48b60f
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x22c]
mov dword [ebp - 0x1c], edx
jmp 0x48b5e9
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48b621
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 0x48b639
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x48b673
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x230]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48b665
jmp 0x48b673
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x230]
mov dword [ebp - 0x1c], edx
jmp 0x48b639
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x234], 0
jmp 0x48b697
mov ecx, dword [ebp - 0x234]
add ecx, 1
mov dword [ebp - 0x234], ecx
cmp dword [ebp - 0x234], 8
jge 0x48b6e4
cmp dword [ebp - 0x1c], 0
jge 0x48b6ae
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 0x48b6c4
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x238], 0xfa
lea edx, [ebp - 0x238]
push edx
lea eax, [ebp - 0x430]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48b688
mov dword [ebp - 0x434], 0
jmp 0x48b6ff
mov ecx, dword [ebp - 0x434]
add ecx, 1
mov dword [ebp - 0x434], ecx
cmp dword [ebp - 0x434], 0x1f
jge 0x48b716
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x434]
mov dword [ebp - 0x1c], edx
jmp 0x48b6f0
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48b728
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 0x48b740
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x438], 0
jmp 0x48b75b
mov edx, dword [ebp - 0x438]
add edx, 1
mov dword [ebp - 0x438], edx
cmp dword [ebp - 0x438], 0xf
jge 0x48b772
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x438]
mov dword [ebp - 0x1c], eax
jmp 0x48b74c
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48b784
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 0x48b79c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x43c], 0
jmp 0x48b7b7
mov edx, dword [ebp - 0x43c]
add edx, 1
mov dword [ebp - 0x43c], edx
cmp dword [ebp - 0x43c], 0
jge 0x48b7f8
cmp dword [ebp - 0x1c], 0
jge 0x48b7ce
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 0x48b7e4
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x638]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48b7a8
mov dword [ebp - 0x63c], 0
jmp 0x48b813
mov eax, dword [ebp - 0x63c]
add eax, 1
mov dword [ebp - 0x63c], eax
cmp dword [ebp - 0x63c], 1
jge 0x48b854
cmp dword [ebp - 0x1c], 0
jge 0x48b82a
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 0x48b840
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x838]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48b804
mov dword [ebp - 0x83c], 0
jmp 0x48b86f
mov eax, dword [ebp - 0x83c]
add eax, 1
mov dword [ebp - 0x83c], eax
cmp dword [ebp - 0x83c], 0x10
jge 0x48b886
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x83c]
mov dword [ebp - 0x1c], ecx
jmp 0x48b860
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48b898
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 0x48b8b0
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x840], 0
jmp 0x48b8cb
mov edx, dword [ebp - 0x840]
add edx, 1
mov dword [ebp - 0x840], edx
cmp dword [ebp - 0x840], 0xf
jge 0x48b8e2
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x840]
mov dword [ebp - 0x1c], eax
jmp 0x48b8bc
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48b8f4
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 0x48b90c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x844], 0
jmp 0x48b927
mov edx, dword [ebp - 0x844]
add edx, 1
mov dword [ebp - 0x844], edx
cmp dword [ebp - 0x844], 8
jge 0x48b974
mov eax, dword [ebp - 0x844]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48b956
mov eax, dword [ebp - 0x844]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48b966
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x844]
mov dword [ebp - 0x1c], edx
jmp 0x48b972
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x844]
mov dword [ebp - 0x1c], eax
jmp 0x48b918
mov dword [ebp - 4], 0
mov dword [ebp - 0x848], 0xffffffff
mov dword [ebp - 0x84c], 0
jmp 0x48b9a0
mov ecx, dword [ebp - 0x84c]
add ecx, 1
mov dword [ebp - 0x84c], ecx
cmp dword [ebp - 0x84c], 0xa
jge 0x48b9d2
mov eax, dword [ebp - 0x84c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48b9c7
mov edx, dword [ebp - 0x848]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48b991
mov dword [ebp - 4], 0xfffffffe
jmp 0x48b9f2
mov dword [ebp - 0x850], 0
jmp 0x48ba0d
mov edx, dword [ebp - 0x850]
add edx, 1
mov dword [ebp - 0x850], edx
cmp dword [ebp - 0x850], 0xe
jge 0x48ba4e
cmp dword [ebp - 0x1c], 0
jge 0x48ba24
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 0x48ba3a
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa48]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48b9fe
mov dword [ebp - 4], 1
mov dword [ebp - 0xa4c], 0xffffffff
mov dword [ebp - 0xa50], 0
jmp 0x48ba7a
mov eax, dword [ebp - 0xa50]
add eax, 1
mov dword [ebp - 0xa50], eax
cmp dword [ebp - 0xa50], 2
jge 0x48baac
mov eax, dword [ebp - 0xa50]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48baa1
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 0x48ba6b
mov dword [ebp - 4], 0xfffffffe
jmp 0x48bacc
mov dword [ebp - 0xa54], 0
jmp 0x48bae7
mov edx, dword [ebp - 0xa54]
add edx, 1
mov dword [ebp - 0xa54], edx
cmp dword [ebp - 0xa54], 7
jge 0x48bafe
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xa54]
mov dword [ebp - 0x1c], eax
jmp 0x48bad8
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48bb10
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 0x48bb28
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa58], 0
jmp 0x48bb43
mov edx, dword [ebp - 0xa58]
add edx, 1
mov dword [ebp - 0xa58], edx
cmp dword [ebp - 0xa58], 8
jge 0x48bb5a
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xa58]
mov dword [ebp - 0x1c], eax
jmp 0x48bb34
cmp dword [ebp - 0x1c], 0
jge 0x48bb68
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 0x48bb80
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa5c], 0
jmp 0x48bb9b
mov edx, dword [ebp - 0xa5c]
add edx, 1
mov dword [ebp - 0xa5c], edx
cmp dword [ebp - 0xa5c], 6
jge 0x48bbb2
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xa5c]
mov dword [ebp - 0x1c], eax
jmp 0x48bb8c
cmp dword [ebp - 0x1c], 0
jge 0x48bbc0
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 0x48bbd8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0xa60], 0xffffffff
mov dword [ebp - 0xa64], 0
jmp 0x48bc04
mov edx, dword [ebp - 0xa64]
add edx, 1
mov dword [ebp - 0xa64], edx
cmp dword [ebp - 0xa64], 5
jge 0x48bc36
mov eax, dword [ebp - 0xa64]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48bc2b
mov edx, dword [ebp - 0xa60]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48bbf5
mov dword [ebp - 4], 0xfffffffe
jmp 0x48bc56
mov edx, 1
test edx, edx
je 0x48bc90
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xa68], eax
mov eax, dword [ebp - 0xa68]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48bc82
jmp 0x48bc90
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xa68]
mov dword [ebp - 0x1c], edx
jmp 0x48bc56
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa6c], 0
jmp 0x48bcb4
mov ecx, dword [ebp - 0xa6c]
add ecx, 1
mov dword [ebp - 0xa6c], ecx
cmp dword [ebp - 0xa6c], 6
jge 0x48bd01
mov eax, dword [ebp - 0xa6c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48bce3
mov eax, dword [ebp - 0xa6c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48bcf3
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa6c]
mov dword [ebp - 0x1c], edx
jmp 0x48bcff
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xa6c]
mov dword [ebp - 0x1c], eax
jmp 0x48bca5
mov dword [ebp - 0xa70], 0
jmp 0x48bd1c
mov ecx, dword [ebp - 0xa70]
add ecx, 1
mov dword [ebp - 0xa70], ecx
cmp dword [ebp - 0xa70], 6
jge 0x48bd33
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xa70]
mov dword [ebp - 0x1c], edx
jmp 0x48bd0d
cmp dword [ebp - 0x1c], 0
jge 0x48bd41
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 0x48bd59
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa74], 0
jmp 0x48bd74
mov edx, dword [ebp - 0xa74]
add edx, 1
mov dword [ebp - 0xa74], edx
cmp dword [ebp - 0xa74], 1
jge 0x48bdb5
cmp dword [ebp - 0x1c], 0
jge 0x48bd8b
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 0x48bda1
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc70]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48bd65
mov dword [ebp - 0xc74], 0
jmp 0x48bdd0
mov eax, dword [ebp - 0xc74]
add eax, 1
mov dword [ebp - 0xc74], eax
cmp dword [ebp - 0xc74], 3
jge 0x48be1d
cmp dword [ebp - 0x1c], 0
jge 0x48bde7
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 0x48bdfd
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc78], 0xfa
lea edx, [ebp - 0xc78]
push edx
lea eax, [ebp - 0xe70]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48bdc1
mov dword [ebp - 0xe74], 0
jmp 0x48be38
mov ecx, dword [ebp - 0xe74]
add ecx, 1
mov dword [ebp - 0xe74], ecx
cmp dword [ebp - 0xe74], 2
jge 0x48be85
cmp dword [ebp - 0x1c], 0
jge 0x48be4f
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 0x48be65
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xe78], 0xfa
lea edx, [ebp - 0xe78]
push edx
lea eax, [ebp - 0x1070]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48be29
mov dword [ebp - 0x1074], 0
jmp 0x48bea0
mov ecx, dword [ebp - 0x1074]
add ecx, 1
mov dword [ebp - 0x1074], ecx
cmp dword [ebp - 0x1074], 1
jge 0x48beed
cmp dword [ebp - 0x1c], 0
jge 0x48beb7
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 0x48becd
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1078], 0xfa
lea edx, [ebp - 0x1078]
push edx
lea eax, [ebp - 0x1270]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48be91
mov dword [ebp - 0x1274], 0
jmp 0x48bf08
mov ecx, dword [ebp - 0x1274]
add ecx, 1
mov dword [ebp - 0x1274], ecx
cmp dword [ebp - 0x1274], 3
jge 0x48bf1f
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x1274]
mov dword [ebp - 0x1c], edx
jmp 0x48bef9
cmp dword [ebp - 0x1c], 0
jge 0x48bf2d
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 0x48bf45
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1278], 0
jmp 0x48bf60
mov edx, dword [ebp - 0x1278]
add edx, 1
mov dword [ebp - 0x1278], edx
cmp dword [ebp - 0x1278], 3
jge 0x48bf77
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1278]
mov dword [ebp - 0x1c], eax
jmp 0x48bf51
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48bf89
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 0x48bfa1
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x48bfdb
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x127c], eax
mov eax, dword [ebp - 0x127c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48bfcd
jmp 0x48bfdb
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x127c]
mov dword [ebp - 0x1c], edx
jmp 0x48bfa1
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0x1280], 0xffffffff
mov dword [ebp - 0x1284], 0
jmp 0x48c010
mov ecx, dword [ebp - 0x1284]
add ecx, 1
mov dword [ebp - 0x1284], ecx
cmp dword [ebp - 0x1284], 2
jge 0x48c042
mov eax, dword [ebp - 0x1284]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48c037
mov edx, dword [ebp - 0x1280]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48c001
mov dword [ebp - 4], 0xfffffffe
jmp 0x48c062
mov dword [ebp - 0x1288], 0
jmp 0x48c07d
mov edx, dword [ebp - 0x1288]
add edx, 1
mov dword [ebp - 0x1288], edx
cmp dword [ebp - 0x1288], 3
jge 0x48c094
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x1288]
mov dword [ebp - 0x1c], eax
jmp 0x48c06e
cmp dword [ebp - 0x1c], 0
jge 0x48c0a2
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 0x48c0ba
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 4
mov dword [ebp - 0x128c], 0xffffffff
mov dword [ebp - 0x1290], 0
jmp 0x48c0e6
mov edx, dword [ebp - 0x1290]
add edx, 1
mov dword [ebp - 0x1290], edx
cmp dword [ebp - 0x1290], 2
jge 0x48c118
mov eax, dword [ebp - 0x1290]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48c10d
mov edx, dword [ebp - 0x128c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48c0d7
mov dword [ebp - 4], 0xfffffffe
jmp 0x48c138
mov dword [ebp - 0x1294], 0
jmp 0x48c153
mov edx, dword [ebp - 0x1294]
add edx, 1
mov dword [ebp - 0x1294], edx
cmp dword [ebp - 0x1294], 1
jge 0x48c194
cmp dword [ebp - 0x1c], 0
jge 0x48c16a
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 0x48c180
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1490]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48c144
mov dword [ebp - 0x1494], 0
jmp 0x48c1af
mov eax, dword [ebp - 0x1494]
add eax, 1
mov dword [ebp - 0x1494], eax
cmp dword [ebp - 0x1494], 3
jge 0x48c1fc
cmp dword [ebp - 0x1c], 0
jge 0x48c1c6
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 0x48c1dc
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 0x48c1a0
mov dword [ebp - 0x1694], 0
jmp 0x48c217
mov ecx, dword [ebp - 0x1694]
add ecx, 1
mov dword [ebp - 0x1694], ecx
cmp dword [ebp - 0x1694], 3
jge 0x48c258
cmp dword [ebp - 0x1c], 0
jge 0x48c22e
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 0x48c244
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1890]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48c208
mov dword [ebp - 0x1894], 0
jmp 0x48c273
mov eax, dword [ebp - 0x1894]
add eax, 1
mov dword [ebp - 0x1894], eax
cmp dword [ebp - 0x1894], 3
jge 0x48c28a
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x1894]
mov dword [ebp - 0x1c], ecx
jmp 0x48c264
cmp dword [ebp - 0x1c], 0
jge 0x48c298
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 0x48c2b0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1898], 0
jmp 0x48c2cb
mov edx, dword [ebp - 0x1898]
add edx, 1
mov dword [ebp - 0x1898], edx
cmp dword [ebp - 0x1898], 1
jge 0x48c318
cmp dword [ebp - 0x1c], 0
jge 0x48c2e2
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 0x48c2f8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x189c], 0xfa
lea edx, [ebp - 0x189c]
push edx
lea eax, [ebp - 0x1a98]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48c2bc
mov dword [ebp - 0x1a9c], 0
jmp 0x48c333
mov ecx, dword [ebp - 0x1a9c]
add ecx, 1
mov dword [ebp - 0x1a9c], ecx
cmp dword [ebp - 0x1a9c], 3
jge 0x48c380
mov eax, dword [ebp - 0x1a9c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48c362
mov eax, dword [ebp - 0x1a9c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48c372
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1a9c]
mov dword [ebp - 0x1c], edx
jmp 0x48c37e
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1a9c]
mov dword [ebp - 0x1c], eax
jmp 0x48c324
mov dword [ebp - 0x1aa0], 0
jmp 0x48c39b
mov ecx, dword [ebp - 0x1aa0]
add ecx, 1
mov dword [ebp - 0x1aa0], ecx
cmp dword [ebp - 0x1aa0], 1
jge 0x48c3dc
cmp dword [ebp - 0x1c], 0
jge 0x48c3b2
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 0x48c3c8
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1c98]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48c38c
mov dword [ebp - 0x1c9c], 0
jmp 0x48c3f7
mov eax, dword [ebp - 0x1c9c]
add eax, 1
mov dword [ebp - 0x1c9c], eax
cmp dword [ebp - 0x1c9c], 4
jge 0x48c444
cmp dword [ebp - 0x1c], 0
jge 0x48c40e
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 0x48c424
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1ca0], 0xfa
lea edx, [ebp - 0x1ca0]
push edx
lea eax, [ebp - 0x1e98]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48c3e8
mov dword [ebp - 4], 5
mov dword [ebp - 0x1e9c], 0xffffffff
mov dword [ebp - 0x1ea0], 0
jmp 0x48c470
mov ecx, dword [ebp - 0x1ea0]
add ecx, 1
mov dword [ebp - 0x1ea0], ecx
cmp dword [ebp - 0x1ea0], 4
jge 0x48c4a2
mov eax, dword [ebp - 0x1ea0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48c497
mov edx, dword [ebp - 0x1e9c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48c461
mov dword [ebp - 4], 0xfffffffe
jmp 0x48c4c2
mov dword [ebp - 0x1ea4], 0
jmp 0x48c4dd
mov edx, dword [ebp - 0x1ea4]
add edx, 1
mov dword [ebp - 0x1ea4], edx
cmp dword [ebp - 0x1ea4], 2
jge 0x48c51e
cmp dword [ebp - 0x1c], 0
jge 0x48c4f4
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 0x48c50a
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x20a0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48c4ce
mov dword [ebp - 0x20a4], 0
jmp 0x48c539
mov eax, dword [ebp - 0x20a4]
add eax, 1
mov dword [ebp - 0x20a4], eax
cmp dword [ebp - 0x20a4], 0
jge 0x48c550
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x20a4]
mov dword [ebp - 0x1c], ecx
jmp 0x48c52a
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48c562
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 0x48c57a
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20a8], 0
jmp 0x48c595
mov edx, dword [ebp - 0x20a8]
add edx, 1
mov dword [ebp - 0x20a8], edx
cmp dword [ebp - 0x20a8], 1
jge 0x48c5ac
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x20a8]
mov dword [ebp - 0x1c], eax
jmp 0x48c586
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48c5be
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 0x48c5d6
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20ac], 0
jmp 0x48c5f1
mov edx, dword [ebp - 0x20ac]
add edx, 1
mov dword [ebp - 0x20ac], edx
cmp dword [ebp - 0x20ac], 0
jge 0x48c632
cmp dword [ebp - 0x1c], 0
jge 0x48c608
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 0x48c61e
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x22a8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48c5e2
mov dword [ebp - 0x22ac], 0
jmp 0x48c64d
mov eax, dword [ebp - 0x22ac]
add eax, 1
mov dword [ebp - 0x22ac], eax
cmp dword [ebp - 0x22ac], 0
jge 0x48c69a
cmp dword [ebp - 0x1c], 0
jge 0x48c664
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 0x48c67a
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x22b0], 0xfa
lea edx, [ebp - 0x22b0]
push edx
lea eax, [ebp - 0x24a8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48c63e
mov dword [ebp - 0x24ac], 0
jmp 0x48c6b5
cmp dword [ebp - 0x24ac], 4
jge 0x48c6f6
cmp dword [ebp - 0x1c], 0
jge 0x48c6cc
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 0x48c6e2
mov dword [ebp - 0x26ac], 0
jmp 0x48c711
cmp dword [ebp - 0x26ac], 1
jge 0x48c752