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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x512528
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x16c8
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x30], 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 0x48d249
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xc
jge 0x48d25a
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jmp 0x48d240
cmp dword [ebp - 0x1c], 0
jge 0x48d268
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 0x48d280
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x48d2b1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48d2a6
jmp 0x48d2b1
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edx
jmp 0x48d280
mov eax, dword [ebp - 0x1c]
add eax, 0x19
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], 0
jmp 0x48d2cc
mov ecx, dword [ebp - 0x28]
add ecx, 1
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], 0xa
jge 0x48d310
cmp dword [ebp - 0x1c], 0
jge 0x48d2e0
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 0x48d2f6
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x2c], 0xfa
lea edx, [ebp - 0x2c]
push edx
lea eax, [ebp - 0x228]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48d2c3
mov dword [ebp - 0x22c], 0
jmp 0x48d32b
mov ecx, dword [ebp - 0x22c]
add ecx, 1
mov dword [ebp - 0x22c], ecx
cmp dword [ebp - 0x22c], 0x1b
jge 0x48d342
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x22c]
mov dword [ebp - 0x1c], edx
jmp 0x48d31c
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48d354
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 0x48d36c
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x230], 0xffffffff
mov dword [ebp - 0x234], 0
jmp 0x48d398
mov edx, dword [ebp - 0x234]
add edx, 1
mov dword [ebp - 0x234], edx
cmp dword [ebp - 0x234], 0xb
jge 0x48d3ca
mov eax, dword [ebp - 0x234]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48d3bf
mov edx, dword [ebp - 0x230]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48d389
mov dword [ebp - 4], 0xfffffffe
jmp 0x48d3ea
mov dword [ebp - 0x238], 0
jmp 0x48d405
mov edx, dword [ebp - 0x238]
add edx, 1
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 0x19
jge 0x48d452
mov eax, dword [ebp - 0x238]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48d434
mov eax, dword [ebp - 0x238]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48d444
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x238]
mov dword [ebp - 0x1c], edx
jmp 0x48d450
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x238]
mov dword [ebp - 0x1c], eax
jmp 0x48d3f6
mov ecx, 1
test ecx, ecx
je 0x48d48c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp - 0x23c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48d47e
jmp 0x48d48c
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], edx
jmp 0x48d452
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x240], 0
jmp 0x48d4b0
mov ecx, dword [ebp - 0x240]
add ecx, 1
mov dword [ebp - 0x240], ecx
cmp dword [ebp - 0x240], 1
jge 0x48d4fd
mov eax, dword [ebp - 0x240]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48d4df
mov eax, dword [ebp - 0x240]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48d4ef
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x240]
mov dword [ebp - 0x1c], edx
jmp 0x48d4fb
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x240]
mov dword [ebp - 0x1c], eax
jmp 0x48d4a1
mov dword [ebp - 0x244], 0
jmp 0x48d518
mov ecx, dword [ebp - 0x244]
add ecx, 1
mov dword [ebp - 0x244], ecx
cmp dword [ebp - 0x244], 7
jge 0x48d52f
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x244]
mov dword [ebp - 0x1c], edx
jmp 0x48d509
cmp dword [ebp - 0x1c], 0
jge 0x48d53d
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 0x48d555
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x248], 0
jmp 0x48d570
mov edx, dword [ebp - 0x248]
add edx, 1
mov dword [ebp - 0x248], edx
cmp dword [ebp - 0x248], 0
jge 0x48d5b1
cmp dword [ebp - 0x1c], 0
jge 0x48d587
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 0x48d59d
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x440]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48d561
mov dword [ebp - 4], 1
mov dword [ebp - 0x444], 0xffffffff
mov dword [ebp - 0x448], 0
jmp 0x48d5dd
mov eax, dword [ebp - 0x448]
add eax, 1
mov dword [ebp - 0x448], eax
cmp dword [ebp - 0x448], 7
jge 0x48d60f
mov eax, dword [ebp - 0x448]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48d604
mov edx, dword [ebp - 0x444]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48d5ce
mov dword [ebp - 4], 0xfffffffe
jmp 0x48d62f
mov dword [ebp - 0x44c], 0
jmp 0x48d64a
mov edx, dword [ebp - 0x44c]
add edx, 1
mov dword [ebp - 0x44c], edx
cmp dword [ebp - 0x44c], 4
jge 0x48d661
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x44c]
mov dword [ebp - 0x1c], eax
jmp 0x48d63b
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48d673
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 0x48d68b
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x48d6c5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x450], eax
mov eax, dword [ebp - 0x450]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48d6b7
jmp 0x48d6c5
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x450]
mov dword [ebp - 0x1c], edx
jmp 0x48d68b
mov eax, dword [ebp - 0x1c]
add eax, 5
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x454], 0
jmp 0x48d6e9
mov ecx, dword [ebp - 0x454]
add ecx, 1
mov dword [ebp - 0x454], ecx
cmp dword [ebp - 0x454], 6
jge 0x48d72a
cmp dword [ebp - 0x1c], 0
jge 0x48d700
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 0x48d716
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x650]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x48d6da
mov eax, 1
test eax, eax
je 0x48d764
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x654], eax
mov eax, dword [ebp - 0x654]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48d756
jmp 0x48d764
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x654]
mov dword [ebp - 0x1c], edx
jmp 0x48d72a
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x658], 0
jmp 0x48d788
mov ecx, dword [ebp - 0x658]
add ecx, 1
mov dword [ebp - 0x658], ecx
cmp dword [ebp - 0x658], 1
jge 0x48d7d5
cmp dword [ebp - 0x1c], 0
jge 0x48d79f
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 0x48d7b5
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x65c], 0xfa
lea edx, [ebp - 0x65c]
push edx
lea eax, [ebp - 0x858]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48d779
mov dword [ebp - 0x85c], 0
jmp 0x48d7f0
mov ecx, dword [ebp - 0x85c]
add ecx, 1
mov dword [ebp - 0x85c], ecx
cmp dword [ebp - 0x85c], 2
jge 0x48d807
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x85c]
mov dword [ebp - 0x1c], edx
jmp 0x48d7e1
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48d819
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 0x48d831
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x860], 0
jmp 0x48d84c
mov edx, dword [ebp - 0x860]
add edx, 1
mov dword [ebp - 0x860], edx
cmp dword [ebp - 0x860], 1
jge 0x48d899
cmp dword [ebp - 0x1c], 0
jge 0x48d863
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 0x48d879
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x864], 0xfa
lea edx, [ebp - 0x864]
push edx
lea eax, [ebp - 0xa60]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48d83d
mov dword [ebp - 0xa64], 0
jmp 0x48d8b4
mov ecx, dword [ebp - 0xa64]
add ecx, 1
mov dword [ebp - 0xa64], ecx
cmp dword [ebp - 0xa64], 4
jge 0x48d901
mov eax, dword [ebp - 0xa64]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48d8e3
mov eax, dword [ebp - 0xa64]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48d8f3
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa64]
mov dword [ebp - 0x1c], edx
jmp 0x48d8ff
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xa64]
mov dword [ebp - 0x1c], eax
jmp 0x48d8a5
mov dword [ebp - 0xa68], 0
jmp 0x48d91c
mov ecx, dword [ebp - 0xa68]
add ecx, 1
mov dword [ebp - 0xa68], ecx
cmp dword [ebp - 0xa68], 0
jge 0x48d933
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xa68]
mov dword [ebp - 0x1c], edx
jmp 0x48d90d
cmp dword [ebp - 0x1c], 0
jge 0x48d941
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 0x48d959
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa6c], 0
jmp 0x48d974
mov edx, dword [ebp - 0xa6c]
add edx, 1
mov dword [ebp - 0xa6c], edx
cmp dword [ebp - 0xa6c], 8
jge 0x48d98b
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xa6c]
mov dword [ebp - 0x1c], eax
jmp 0x48d965
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48d99d
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 0x48d9b5
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa70], 0
jmp 0x48d9d0
mov edx, dword [ebp - 0xa70]
add edx, 1
mov dword [ebp - 0xa70], edx
cmp dword [ebp - 0xa70], 3
jge 0x48da1d
mov eax, dword [ebp - 0xa70]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48d9ff
mov eax, dword [ebp - 0xa70]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48da0f
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xa70]
mov dword [ebp - 0x1c], edx
jmp 0x48da1b
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xa70]
mov dword [ebp - 0x1c], eax
jmp 0x48d9c1
mov dword [ebp - 0xa74], 0
jmp 0x48da38
mov ecx, dword [ebp - 0xa74]
add ecx, 1
mov dword [ebp - 0xa74], ecx
cmp dword [ebp - 0xa74], 2
jge 0x48da4f
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xa74]
mov dword [ebp - 0x1c], edx
jmp 0x48da29
cmp dword [ebp - 0x1c], 0
jge 0x48da5d
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 0x48da75
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa78], 0
jmp 0x48da90
mov edx, dword [ebp - 0xa78]
add edx, 1
mov dword [ebp - 0xa78], edx
cmp dword [ebp - 0xa78], 5
jge 0x48dadd
cmp dword [ebp - 0x1c], 0
jge 0x48daa7
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 0x48dabd
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xa7c], 0xfa
lea edx, [ebp - 0xa7c]
push edx
lea eax, [ebp - 0xc78]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48da81
mov dword [ebp - 0xc7c], 0
jmp 0x48daf8
mov ecx, dword [ebp - 0xc7c]
add ecx, 1
mov dword [ebp - 0xc7c], ecx
cmp dword [ebp - 0xc7c], 7
jge 0x48db0f
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xc7c]
mov dword [ebp - 0x1c], edx
jmp 0x48dae9
cmp dword [ebp - 0x1c], 0
jge 0x48db1d
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 0x48db35
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc80], 0
jmp 0x48db50
mov edx, dword [ebp - 0xc80]
add edx, 1
mov dword [ebp - 0xc80], edx
cmp dword [ebp - 0xc80], 2
jge 0x48db9d
mov eax, dword [ebp - 0xc80]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48db7f
mov eax, dword [ebp - 0xc80]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48db8f
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc80]
mov dword [ebp - 0x1c], edx
jmp 0x48db9b
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc80]
mov dword [ebp - 0x1c], eax
jmp 0x48db41
mov ecx, 1
test ecx, ecx
je 0x48dbd7
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc84], eax
mov eax, dword [ebp - 0xc84]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48dbc9
jmp 0x48dbd7
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xc84]
mov dword [ebp - 0x1c], edx
jmp 0x48db9d
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0xc88], 0xffffffff
mov dword [ebp - 0xc8c], 0
jmp 0x48dc0c
mov ecx, dword [ebp - 0xc8c]
add ecx, 1
mov dword [ebp - 0xc8c], ecx
cmp dword [ebp - 0xc8c], 7
jge 0x48dc3e
mov eax, dword [ebp - 0xc8c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48dc33
mov edx, dword [ebp - 0xc88]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48dbfd
mov dword [ebp - 4], 0xfffffffe
jmp 0x48dc5e
mov dword [ebp - 0xc90], 0
jmp 0x48dc79
mov edx, dword [ebp - 0xc90]
add edx, 1
mov dword [ebp - 0xc90], edx
cmp dword [ebp - 0xc90], 2
jge 0x48dcc6
cmp dword [ebp - 0x1c], 0
jge 0x48dc90
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 0x48dca6
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc94], 0xfa
lea edx, [ebp - 0xc94]
push edx
lea eax, [ebp - 0xe90]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48dc6a
mov dword [ebp - 0xe94], 0
jmp 0x48dce1
mov ecx, dword [ebp - 0xe94]
add ecx, 1
mov dword [ebp - 0xe94], ecx
cmp dword [ebp - 0xe94], 2
jge 0x48dcf8
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xe94]
mov dword [ebp - 0x1c], edx
jmp 0x48dcd2
cmp dword [ebp - 0x1c], 0
jge 0x48dd06
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 0x48dd1e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe98], 0
jmp 0x48dd39
mov edx, dword [ebp - 0xe98]
add edx, 1
mov dword [ebp - 0xe98], edx
cmp dword [ebp - 0xe98], 0
jge 0x48dd50
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xe98]
mov dword [ebp - 0x1c], eax
jmp 0x48dd2a
cmp dword [ebp - 0x1c], 0
jge 0x48dd5e
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 0x48dd76
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe9c], 0
jmp 0x48dd91
mov edx, dword [ebp - 0xe9c]
add edx, 1
mov dword [ebp - 0xe9c], edx
cmp dword [ebp - 0xe9c], 3
jge 0x48ddde
mov eax, dword [ebp - 0xe9c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x48ddc0
mov eax, dword [ebp - 0xe9c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x48ddd0
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xe9c]
mov dword [ebp - 0x1c], edx
jmp 0x48dddc
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xe9c]
mov dword [ebp - 0x1c], eax
jmp 0x48dd82
mov dword [ebp - 0xea0], 0
jmp 0x48ddf9
mov ecx, dword [ebp - 0xea0]
add ecx, 1
mov dword [ebp - 0xea0], ecx
cmp dword [ebp - 0xea0], 3
jge 0x48de46
cmp dword [ebp - 0x1c], 0
jge 0x48de10
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 0x48de26
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xea4], 0xfa
lea edx, [ebp - 0xea4]
push edx
lea eax, [ebp - 0x10a0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48ddea
mov dword [ebp - 4], 3
mov dword [ebp - 0x10a4], 0xffffffff
mov dword [ebp - 0x10a8], 0
jmp 0x48de72
mov ecx, dword [ebp - 0x10a8]
add ecx, 1
mov dword [ebp - 0x10a8], ecx
cmp dword [ebp - 0x10a8], 4
jge 0x48dea4
mov eax, dword [ebp - 0x10a8]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48de99
mov edx, dword [ebp - 0x10a4]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48de63
mov dword [ebp - 4], 0xfffffffe
jmp 0x48dec4
mov dword [ebp - 4], 4
mov dword [ebp - 0x10ac], 0xffffffff
mov dword [ebp - 0x10b0], 0
jmp 0x48def0
mov edx, dword [ebp - 0x10b0]
add edx, 1
mov dword [ebp - 0x10b0], edx
cmp dword [ebp - 0x10b0], 0
jge 0x48df22
mov eax, dword [ebp - 0x10b0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48df17
mov edx, dword [ebp - 0x10ac]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48dee1
mov dword [ebp - 4], 0xfffffffe
jmp 0x48df42
mov edx, 1
test edx, edx
je 0x48df7c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x10b4], eax
mov eax, dword [ebp - 0x10b4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48df6e
jmp 0x48df7c
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x10b4]
mov dword [ebp - 0x1c], edx
jmp 0x48df42
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x48dfbc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x10b8], eax
mov eax, dword [ebp - 0x10b8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48dfae
jmp 0x48dfbc
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x10b8]
mov dword [ebp - 0x1c], edx
jmp 0x48df82
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10bc], 0
jmp 0x48dfe0
mov ecx, dword [ebp - 0x10bc]
add ecx, 1
mov dword [ebp - 0x10bc], ecx
cmp dword [ebp - 0x10bc], 3
jge 0x48dff7
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x10bc]
mov dword [ebp - 0x1c], edx
jmp 0x48dfd1
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48e009
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 0x48e021
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10c0], 0
jmp 0x48e03c
mov edx, dword [ebp - 0x10c0]
add edx, 1
mov dword [ebp - 0x10c0], edx
cmp dword [ebp - 0x10c0], 1
jge 0x48e089
cmp dword [ebp - 0x1c], 0
jge 0x48e053
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 0x48e069
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x10c4], 0xfa
lea edx, [ebp - 0x10c4]
push edx
lea eax, [ebp - 0x12c0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48e02d
mov dword [ebp - 0x12c4], 0
jmp 0x48e0a4
mov ecx, dword [ebp - 0x12c4]
add ecx, 1
mov dword [ebp - 0x12c4], ecx
cmp dword [ebp - 0x12c4], 1
jge 0x48e0bb
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x12c4]
mov dword [ebp - 0x1c], edx
jmp 0x48e095
cmp dword [ebp - 0x1c], 0
jge 0x48e0c9
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 0x48e0e1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x12c8], 0
jmp 0x48e0fc
mov edx, dword [ebp - 0x12c8]
add edx, 1
mov dword [ebp - 0x12c8], edx
cmp dword [ebp - 0x12c8], 2
jge 0x48e149
cmp dword [ebp - 0x1c], 0
jge 0x48e113
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 0x48e129
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x12cc], 0xfa
lea edx, [ebp - 0x12cc]
push edx
lea eax, [ebp - 0x14c8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48e0ed
mov dword [ebp - 4], 5
mov dword [ebp - 0x14cc], 0xffffffff
mov dword [ebp - 0x14d0], 0
jmp 0x48e175
mov ecx, dword [ebp - 0x14d0]
add ecx, 1
mov dword [ebp - 0x14d0], ecx
cmp dword [ebp - 0x14d0], 2
jge 0x48e1a7
mov eax, dword [ebp - 0x14d0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x48e19c
mov edx, dword [ebp - 0x14cc]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x48e166
mov dword [ebp - 4], 0xfffffffe
jmp 0x48e1c7
mov edx, 1
test edx, edx
je 0x48e201
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14d4], eax
mov eax, dword [ebp - 0x14d4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48e1f3
jmp 0x48e201
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14d4]
mov dword [ebp - 0x1c], edx
jmp 0x48e1c7
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14d8], 0
jmp 0x48e225
mov ecx, dword [ebp - 0x14d8]
add ecx, 1
mov dword [ebp - 0x14d8], ecx
cmp dword [ebp - 0x14d8], 4
jge 0x48e23c
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x14d8]
mov dword [ebp - 0x1c], edx
jmp 0x48e216
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x48e24e
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 0x48e266
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14dc], 0
jmp 0x48e281
mov edx, dword [ebp - 0x14dc]
add edx, 1
mov dword [ebp - 0x14dc], edx
cmp dword [ebp - 0x14dc], 4
jge 0x48e2ce
cmp dword [ebp - 0x1c], 0
jge 0x48e298
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 0x48e2ae
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x14e0], 0xfa
lea edx, [ebp - 0x14e0]
push edx
lea eax, [ebp - 0x16d8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x48e272
mov ecx, 1
test ecx, ecx
je 0x48e308
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x16dc], eax
mov eax, dword [ebp - 0x16dc]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48e2fa
jmp 0x48e308
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x16dc]
mov dword [ebp - 0x1c], edx
jmp 0x48e2ce
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x48e34b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x16e0], eax
mov eax, dword [ebp - 0x16e0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x48e33d
jmp 0x48e34b
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x16e0]
mov dword [ebp - 0x1c], edx
jmp 0x48e311
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
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 - 0x30]
xor ecx, ebp
call fcn.004079a5
mov esp, ebp
pop ebp
ret