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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x513ee8
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x2f74
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 eax, 1
test eax, eax
je 0x4db478
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4db46d
jmp 0x4db478
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
jmp 0x4db447
mov eax, dword [ebp - 0x1c]
add eax, 0x28
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
jmp 0x4db493
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], 0x31
jge 0x4db4d7
cmp dword [ebp - 0x1c], 0
jge 0x4db4a7
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 0x4db4bd
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 0x4db48a
mov dword [ebp - 0x22c], 0
jmp 0x4db4f2
mov ecx, dword [ebp - 0x22c]
add ecx, 1
mov dword [ebp - 0x22c], ecx
cmp dword [ebp - 0x22c], 0x14
jge 0x4db509
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x22c]
mov dword [ebp - 0x1c], edx
jmp 0x4db4e3
cmp dword [ebp - 0x1c], 0
jge 0x4db517
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 0x4db52f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x230], 0
jmp 0x4db54a
mov edx, dword [ebp - 0x230]
add edx, 1
mov dword [ebp - 0x230], edx
cmp dword [ebp - 0x230], 0x3b
jge 0x4db561
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x230]
mov dword [ebp - 0x1c], eax
jmp 0x4db53b
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4db573
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 0x4db58b
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x234], 0xffffffff
mov dword [ebp - 0x238], 0
jmp 0x4db5b7
mov edx, dword [ebp - 0x238]
add edx, 1
mov dword [ebp - 0x238], edx
cmp dword [ebp - 0x238], 0x13
jge 0x4db5e9
mov eax, dword [ebp - 0x238]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4db5de
mov edx, dword [ebp - 0x234]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4db5a8
mov dword [ebp - 4], 0xfffffffe
jmp 0x4db609
mov dword [ebp - 4], 1
mov dword [ebp - 0x23c], 0xffffffff
mov dword [ebp - 0x240], 0
jmp 0x4db635
mov edx, dword [ebp - 0x240]
add edx, 1
mov dword [ebp - 0x240], edx
cmp dword [ebp - 0x240], 0x1a
jge 0x4db667
mov eax, dword [ebp - 0x240]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4db65c
mov edx, dword [ebp - 0x23c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4db626
mov dword [ebp - 4], 0xfffffffe
jmp 0x4db687
mov dword [ebp - 0x244], 0
jmp 0x4db6a2
mov edx, dword [ebp - 0x244]
add edx, 1
mov dword [ebp - 0x244], edx
cmp dword [ebp - 0x244], 1
jge 0x4db6b9
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x244]
mov dword [ebp - 0x1c], eax
jmp 0x4db693
cmp dword [ebp - 0x1c], 0
jge 0x4db6c7
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 0x4db6df
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x248], 0
jmp 0x4db6fa
mov edx, dword [ebp - 0x248]
add edx, 1
mov dword [ebp - 0x248], edx
cmp dword [ebp - 0x248], 6
jge 0x4db711
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x248]
mov dword [ebp - 0x1c], eax
jmp 0x4db6eb
cmp dword [ebp - 0x1c], 0
jge 0x4db71f
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 0x4db737
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24c], 0
jmp 0x4db752
mov edx, dword [ebp - 0x24c]
add edx, 1
mov dword [ebp - 0x24c], edx
cmp dword [ebp - 0x24c], 5
jge 0x4db769
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x24c]
mov dword [ebp - 0x1c], eax
jmp 0x4db743
cmp dword [ebp - 0x1c], 0
jge 0x4db777
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 0x4db78f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x250], 0
jmp 0x4db7aa
mov edx, dword [ebp - 0x250]
add edx, 1
mov dword [ebp - 0x250], edx
cmp dword [ebp - 0x250], 0x10
jge 0x4db7c1
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x250]
mov dword [ebp - 0x1c], eax
jmp 0x4db79b
cmp dword [ebp - 0x1c], 0
jge 0x4db7cf
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 0x4db7e7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4db821
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x254]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4db813
jmp 0x4db821
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x254]
mov dword [ebp - 0x1c], edx
jmp 0x4db7e7
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x258], 0
jmp 0x4db845
mov ecx, dword [ebp - 0x258]
add ecx, 1
mov dword [ebp - 0x258], ecx
cmp dword [ebp - 0x258], 5
jge 0x4db85c
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x258]
mov dword [ebp - 0x1c], edx
jmp 0x4db836
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4db86e
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 0x4db886
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4db8c0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x25c], eax
mov eax, dword [ebp - 0x25c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4db8b2
jmp 0x4db8c0
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x25c]
mov dword [ebp - 0x1c], edx
jmp 0x4db886
mov eax, dword [ebp - 0x1c]
add eax, 0xb
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x260], 0
jmp 0x4db8e4
mov ecx, dword [ebp - 0x260]
add ecx, 1
mov dword [ebp - 0x260], ecx
cmp dword [ebp - 0x260], 3
jge 0x4db8fb
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x260]
mov dword [ebp - 0x1c], edx
jmp 0x4db8d5
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4db90d
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 0x4db925
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x264], 0
jmp 0x4db940
mov edx, dword [ebp - 0x264]
add edx, 1
mov dword [ebp - 0x264], edx
cmp dword [ebp - 0x264], 0xe
jge 0x4db981
cmp dword [ebp - 0x1c], 0
jge 0x4db957
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 0x4db96d
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x460]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4db931
mov dword [ebp - 0x464], 0
jmp 0x4db99c
mov eax, dword [ebp - 0x464]
add eax, 1
mov dword [ebp - 0x464], eax
cmp dword [ebp - 0x464], 0xf
jge 0x4db9b3
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x464]
mov dword [ebp - 0x1c], ecx
jmp 0x4db98d
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4db9c5
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 0x4db9dd
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0x468], 0xffffffff
mov dword [ebp - 0x46c], 0
jmp 0x4dba09
mov edx, dword [ebp - 0x46c]
add edx, 1
mov dword [ebp - 0x46c], edx
cmp dword [ebp - 0x46c], 0xa
jge 0x4dba3b
mov eax, dword [ebp - 0x46c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4dba30
mov edx, dword [ebp - 0x468]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4db9fa
mov dword [ebp - 4], 0xfffffffe
jmp 0x4dba5b
mov dword [ebp - 0x470], 0
jmp 0x4dba76
mov edx, dword [ebp - 0x470]
add edx, 1
mov dword [ebp - 0x470], edx
cmp dword [ebp - 0x470], 0
jge 0x4dbac3
mov eax, dword [ebp - 0x470]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4dbaa5
mov eax, dword [ebp - 0x470]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4dbab5
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x470]
mov dword [ebp - 0x1c], edx
jmp 0x4dbac1
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x470]
mov dword [ebp - 0x1c], eax
jmp 0x4dba67
mov dword [ebp - 0x474], 0
jmp 0x4dbade
mov ecx, dword [ebp - 0x474]
add ecx, 1
mov dword [ebp - 0x474], ecx
cmp dword [ebp - 0x474], 6
jge 0x4dbaf5
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x474]
mov dword [ebp - 0x1c], edx
jmp 0x4dbacf
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4dbb07
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 0x4dbb1f
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4dbb59
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x478], eax
mov eax, dword [ebp - 0x478]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4dbb4b
jmp 0x4dbb59
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x478]
mov dword [ebp - 0x1c], edx
jmp 0x4dbb1f
mov eax, dword [ebp - 0x1c]
add eax, 5
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x47c], 0
jmp 0x4dbb7d
mov ecx, dword [ebp - 0x47c]
add ecx, 1
mov dword [ebp - 0x47c], ecx
cmp dword [ebp - 0x47c], 4
jge 0x4dbbca
mov eax, dword [ebp - 0x47c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4dbbac
mov eax, dword [ebp - 0x47c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4dbbbc
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x47c]
mov dword [ebp - 0x1c], edx
jmp 0x4dbbc8
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x47c]
mov dword [ebp - 0x1c], eax
jmp 0x4dbb6e
mov dword [ebp - 0x480], 0
jmp 0x4dbbe5
mov ecx, dword [ebp - 0x480]
add ecx, 1
mov dword [ebp - 0x480], ecx
cmp dword [ebp - 0x480], 5
jge 0x4dbc32
cmp dword [ebp - 0x1c], 0
jge 0x4dbbfc
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 0x4dbc12
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x484], 0xfa
lea edx, [ebp - 0x484]
push edx
lea eax, [ebp - 0x680]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4dbbd6
mov ecx, 1
test ecx, ecx
je 0x4dbc6c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x684], eax
mov eax, dword [ebp - 0x684]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4dbc5e
jmp 0x4dbc6c
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x684]
mov dword [ebp - 0x1c], edx
jmp 0x4dbc32
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x688], 0
jmp 0x4dbc90
mov ecx, dword [ebp - 0x688]
add ecx, 1
mov dword [ebp - 0x688], ecx
cmp dword [ebp - 0x688], 8
jge 0x4dbcd1
cmp dword [ebp - 0x1c], 0
jge 0x4dbca7
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 0x4dbcbd
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x880]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4dbc81
mov dword [ebp - 0x884], 0
jmp 0x4dbcec
mov eax, dword [ebp - 0x884]
add eax, 1
mov dword [ebp - 0x884], eax
cmp dword [ebp - 0x884], 2
jge 0x4dbd03
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x884]
mov dword [ebp - 0x1c], ecx
jmp 0x4dbcdd
cmp dword [ebp - 0x1c], 0
jge 0x4dbd11
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 0x4dbd29
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4dbd63
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x888], eax
mov eax, dword [ebp - 0x888]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4dbd55
jmp 0x4dbd63
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x888]
mov dword [ebp - 0x1c], edx
jmp 0x4dbd29
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4dbda6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x88c], eax
mov eax, dword [ebp - 0x88c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4dbd98
jmp 0x4dbda6
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x88c]
mov dword [ebp - 0x1c], edx
jmp 0x4dbd6c
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x890], 0
jmp 0x4dbdca
mov ecx, dword [ebp - 0x890]
add ecx, 1
mov dword [ebp - 0x890], ecx
cmp dword [ebp - 0x890], 8
jge 0x4dbe17
mov eax, dword [ebp - 0x890]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4dbdf9
mov eax, dword [ebp - 0x890]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4dbe09
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x890]
mov dword [ebp - 0x1c], edx
jmp 0x4dbe15
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x890]
mov dword [ebp - 0x1c], eax
jmp 0x4dbdbb
mov dword [ebp - 4], 3
mov dword [ebp - 0x894], 0xffffffff
mov dword [ebp - 0x898], 0
jmp 0x4dbe43
mov ecx, dword [ebp - 0x898]
add ecx, 1
mov dword [ebp - 0x898], ecx
cmp dword [ebp - 0x898], 1
jge 0x4dbe75
mov eax, dword [ebp - 0x898]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4dbe6a
mov edx, dword [ebp - 0x894]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4dbe34
mov dword [ebp - 4], 0xfffffffe
jmp 0x4dbe95
mov dword [ebp - 4], 4
mov dword [ebp - 0x89c], 0xffffffff
mov dword [ebp - 0x8a0], 0
jmp 0x4dbec1
mov edx, dword [ebp - 0x8a0]
add edx, 1
mov dword [ebp - 0x8a0], edx
cmp dword [ebp - 0x8a0], 3
jge 0x4dbef3
mov eax, dword [ebp - 0x8a0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4dbee8
mov edx, dword [ebp - 0x89c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4dbeb2
mov dword [ebp - 4], 0xfffffffe
jmp 0x4dbf13
mov dword [ebp - 0x8a4], 0
jmp 0x4dbf2e
mov edx, dword [ebp - 0x8a4]
add edx, 1
mov dword [ebp - 0x8a4], edx
cmp dword [ebp - 0x8a4], 5
jge 0x4dbf7b
cmp dword [ebp - 0x1c], 0
jge 0x4dbf45
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 0x4dbf5b
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x8a8], 0xfa
lea edx, [ebp - 0x8a8]
push edx
lea eax, [ebp - 0xaa0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4dbf1f
mov dword [ebp - 0xaa4], 0
jmp 0x4dbf96
mov ecx, dword [ebp - 0xaa4]
add ecx, 1
mov dword [ebp - 0xaa4], ecx
cmp dword [ebp - 0xaa4], 2
jge 0x4dbfd7
cmp dword [ebp - 0x1c], 0
jge 0x4dbfad
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 0x4dbfc3
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xca0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4dbf87
mov dword [ebp - 4], 5
mov dword [ebp - 0xca4], 0xffffffff
mov dword [ebp - 0xca8], 0
jmp 0x4dc003
mov eax, dword [ebp - 0xca8]
add eax, 1
mov dword [ebp - 0xca8], eax
cmp dword [ebp - 0xca8], 5
jge 0x4dc035
mov eax, dword [ebp - 0xca8]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4dc02a
mov edx, dword [ebp - 0xca4]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4dbff4
mov dword [ebp - 4], 0xfffffffe
jmp 0x4dc055
mov edx, 1
test edx, edx
je 0x4dc08f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xcac], eax
mov eax, dword [ebp - 0xcac]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4dc081
jmp 0x4dc08f
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xcac]
mov dword [ebp - 0x1c], edx
jmp 0x4dc055
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4dc0d2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xcb0], eax
mov eax, dword [ebp - 0xcb0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4dc0c4
jmp 0x4dc0d2
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xcb0]
mov dword [ebp - 0x1c], edx
jmp 0x4dc098
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 6
mov dword [ebp - 0xcb4], 0xffffffff
mov dword [ebp - 0xcb8], 0
jmp 0x4dc107
mov ecx, dword [ebp - 0xcb8]
add ecx, 1
mov dword [ebp - 0xcb8], ecx
cmp dword [ebp - 0xcb8], 1
jge 0x4dc139
mov eax, dword [ebp - 0xcb8]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4dc12e
mov edx, dword [ebp - 0xcb4]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4dc0f8
mov dword [ebp - 4], 0xfffffffe
jmp 0x4dc159
mov edx, 1
test edx, edx
je 0x4dc193
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xcbc], eax
mov eax, dword [ebp - 0xcbc]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4dc185
jmp 0x4dc193
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xcbc]
mov dword [ebp - 0x1c], edx
jmp 0x4dc159
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xcc0], 0
jmp 0x4dc1b4
mov ecx, dword [ebp - 0xcc0]
add ecx, 1
mov dword [ebp - 0xcc0], ecx
cmp dword [ebp - 0xcc0], 4
jge 0x4dc1cb
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xcc0]
mov dword [ebp - 0x1c], edx
jmp 0x4dc1a5
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4dc1dd
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 0x4dc1f5
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4dc22f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xcc4], eax
mov eax, dword [ebp - 0xcc4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4dc221
jmp 0x4dc22f
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xcc4]
mov dword [ebp - 0x1c], edx
jmp 0x4dc1f5
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xcc8], 0
jmp 0x4dc253
mov ecx, dword [ebp - 0xcc8]
add ecx, 1
mov dword [ebp - 0xcc8], ecx
cmp dword [ebp - 0xcc8], 6
jge 0x4dc2a0
mov eax, dword [ebp - 0xcc8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4dc282
mov eax, dword [ebp - 0xcc8]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4dc292
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xcc8]
mov dword [ebp - 0x1c], edx
jmp 0x4dc29e
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xcc8]
mov dword [ebp - 0x1c], eax
jmp 0x4dc244
mov dword [ebp - 0xccc], 0
jmp 0x4dc2bb
mov ecx, dword [ebp - 0xccc]
add ecx, 1
mov dword [ebp - 0xccc], ecx
cmp dword [ebp - 0xccc], 3
jge 0x4dc2d2
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xccc]
mov dword [ebp - 0x1c], edx
jmp 0x4dc2ac
cmp dword [ebp - 0x1c], 0
jge 0x4dc2e0
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 0x4dc2f8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xcd0], 0
jmp 0x4dc313
mov edx, dword [ebp - 0xcd0]
add edx, 1
mov dword [ebp - 0xcd0], edx
cmp dword [ebp - 0xcd0], 2
jge 0x4dc360
cmp dword [ebp - 0x1c], 0
jge 0x4dc32a
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 0x4dc340
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xcd4], 0xfa
lea edx, [ebp - 0xcd4]
push edx
lea eax, [ebp - 0xed0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4dc304
mov dword [ebp - 0xed4], 0
jmp 0x4dc37b
mov ecx, dword [ebp - 0xed4]
add ecx, 1
mov dword [ebp - 0xed4], ecx
cmp dword [ebp - 0xed4], 0
jge 0x4dc3c8
cmp dword [ebp - 0x1c], 0
jge 0x4dc392
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 0x4dc3a8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xed8], 0xfa
lea edx, [ebp - 0xed8]
push edx
lea eax, [ebp - 0x10d0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4dc36c
mov dword [ebp - 0x10d4], 0
jmp 0x4dc3e3
mov ecx, dword [ebp - 0x10d4]
add ecx, 1
mov dword [ebp - 0x10d4], ecx
cmp dword [ebp - 0x10d4], 2
jge 0x4dc424
cmp dword [ebp - 0x1c], 0
jge 0x4dc3fa
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 0x4dc410
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x12d0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4dc3d4
mov dword [ebp - 0x12d4], 0
jmp 0x4dc43f
mov eax, dword [ebp - 0x12d4]
add eax, 1
mov dword [ebp - 0x12d4], eax
cmp dword [ebp - 0x12d4], 6
jge 0x4dc48c
cmp dword [ebp - 0x1c], 0
jge 0x4dc456
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 0x4dc46c
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x12d8], 0xfa
lea edx, [ebp - 0x12d8]
push edx
lea eax, [ebp - 0x14d0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4dc430
mov ecx, 1
test ecx, ecx
je 0x4dc4c6
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 0x4dc4b8
jmp 0x4dc4c6
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14d4]
mov dword [ebp - 0x1c], edx
jmp 0x4dc48c
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4dc509
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14d8], eax
mov eax, dword [ebp - 0x14d8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4dc4fb
jmp 0x4dc509
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14d8]
mov dword [ebp - 0x1c], edx
jmp 0x4dc4cf
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14dc], 0
jmp 0x4dc52d
mov ecx, dword [ebp - 0x14dc]
add ecx, 1
mov dword [ebp - 0x14dc], ecx
cmp dword [ebp - 0x14dc], 0
jge 0x4dc56e
cmp dword [ebp - 0x1c], 0
jge 0x4dc544
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 0x4dc55a
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x16d8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4dc51e
mov dword [ebp - 0x16dc], 0
jmp 0x4dc589
mov eax, dword [ebp - 0x16dc]
add eax, 1
mov dword [ebp - 0x16dc], eax
cmp dword [ebp - 0x16dc], 1
jge 0x4dc5a0
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x16dc]
mov dword [ebp - 0x1c], ecx
jmp 0x4dc57a
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4dc5b2
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 0x4dc5ca
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x16e0], 0
jmp 0x4dc5e5
mov edx, dword [ebp - 0x16e0]
add edx, 1
mov dword [ebp - 0x16e0], edx
cmp dword [ebp - 0x16e0], 1
jge 0x4dc626
cmp dword [ebp - 0x1c], 0
jge 0x4dc5fc
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 0x4dc612
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x18d8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4dc5d6
mov dword [ebp - 0x18dc], 0
jmp 0x4dc641
mov eax, dword [ebp - 0x18dc]
add eax, 1
mov dword [ebp - 0x18dc], eax
cmp dword [ebp - 0x18dc], 0
jge 0x4dc68e
mov eax, dword [ebp - 0x18dc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4dc670
mov eax, dword [ebp - 0x18dc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4dc680
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x18dc]
mov dword [ebp - 0x1c], edx
jmp 0x4dc68c
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x18dc]
mov dword [ebp - 0x1c], eax
jmp 0x4dc632
mov dword [ebp - 0x18e0], 0
jmp 0x4dc6a9
cmp dword [ebp - 0x18e0], 0
jge 0x4dc6f6
cmp dword [ebp - 0x1c], 0
jge 0x4dc6c0
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 0x4dc6d6
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18e4], 0xfa
lea edx, [ebp - 0x18e4]
push edx
lea eax, [ebp - 0x1ae0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4dc69a
mov dword [ebp - 0x1ae4], 0
jmp 0x4dc711
cmp dword [ebp - 0x1ae4], 0
jge 0x4dc728
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1ae4]
mov dword [ebp - 0x1c], edx
jmp 0x4dc702
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4dc73a