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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x510198
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x2b78
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x4c], 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 0x41f369
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x2c
jge 0x41f37a
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jmp 0x41f360
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41f38c
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 0x41f3a4
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
jmp 0x41f3b6
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 5
jge 0x41f3f4
mov eax, dword [ebp - 0x24]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x41f3dc
mov eax, dword [ebp - 0x24]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x41f3e9
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], edx
jmp 0x41f3f2
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
jmp 0x41f3ad
mov ecx, 1
test ecx, ecx
je 0x41f425
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41f41a
jmp 0x41f425
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x28]
mov dword [ebp - 0x1c], edx
jmp 0x41f3f4
mov eax, dword [ebp - 0x1c]
add eax, 0xc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2c], 0
jmp 0x41f440
mov ecx, dword [ebp - 0x2c]
add ecx, 1
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x2c], 5
jge 0x41f451
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], edx
jmp 0x41f437
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41f463
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 0x41f47b
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x34], 0
jmp 0x41f49b
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 8
jge 0x41f4c4
mov eax, dword [ebp - 0x34]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41f4b9
mov edx, dword [ebp - 0x30]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41f492
mov dword [ebp - 4], 0xfffffffe
jmp 0x41f4e4
mov dword [ebp - 4], 1
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x3c], 0
jmp 0x41f504
mov edx, dword [ebp - 0x3c]
add edx, 1
mov dword [ebp - 0x3c], edx
cmp dword [ebp - 0x3c], 7
jge 0x41f52d
mov eax, dword [ebp - 0x3c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41f522
mov edx, dword [ebp - 0x38]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41f4fb
mov dword [ebp - 4], 0xfffffffe
jmp 0x41f54d
mov dword [ebp - 0x40], 0
jmp 0x41f55f
mov edx, dword [ebp - 0x40]
add edx, 1
mov dword [ebp - 0x40], edx
cmp dword [ebp - 0x40], 0
jge 0x41f570
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x40]
mov dword [ebp - 0x1c], eax
jmp 0x41f556
cmp dword [ebp - 0x1c], 0
jge 0x41f57e
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 0x41f596
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x44], 0
jmp 0x41f5a8
mov edx, dword [ebp - 0x44]
add edx, 1
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x44], 0xc
jge 0x41f5ec
cmp dword [ebp - 0x1c], 0
jge 0x41f5bc
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 0x41f5d2
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x48], 0xfa
lea edx, [ebp - 0x48]
push edx
lea eax, [ebp - 0x248]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41f59f
mov dword [ebp - 0x24c], 0
jmp 0x41f607
mov ecx, dword [ebp - 0x24c]
add ecx, 1
mov dword [ebp - 0x24c], ecx
cmp dword [ebp - 0x24c], 0
jge 0x41f654
mov eax, dword [ebp - 0x24c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x41f636
mov eax, dword [ebp - 0x24c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x41f646
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x24c]
mov dword [ebp - 0x1c], edx
jmp 0x41f652
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x24c]
mov dword [ebp - 0x1c], eax
jmp 0x41f5f8
mov dword [ebp - 4], 2
mov dword [ebp - 0x250], 0xffffffff
mov dword [ebp - 0x254], 0
jmp 0x41f680
mov ecx, dword [ebp - 0x254]
add ecx, 1
mov dword [ebp - 0x254], ecx
cmp dword [ebp - 0x254], 5
jge 0x41f6b2
mov eax, dword [ebp - 0x254]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41f6a7
mov edx, dword [ebp - 0x250]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41f671
mov dword [ebp - 4], 0xfffffffe
jmp 0x41f6d2
mov dword [ebp - 0x258], 0
jmp 0x41f6ed
mov edx, dword [ebp - 0x258]
add edx, 1
mov dword [ebp - 0x258], edx
cmp dword [ebp - 0x258], 3
jge 0x41f704
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x258]
mov dword [ebp - 0x1c], eax
jmp 0x41f6de
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41f716
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 0x41f72e
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x25c], 0
jmp 0x41f749
mov edx, dword [ebp - 0x25c]
add edx, 1
mov dword [ebp - 0x25c], edx
cmp dword [ebp - 0x25c], 5
jge 0x41f760
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x25c]
mov dword [ebp - 0x1c], eax
jmp 0x41f73a
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41f772
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 0x41f78a
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x260], 0
jmp 0x41f7a5
mov edx, dword [ebp - 0x260]
add edx, 1
mov dword [ebp - 0x260], edx
cmp dword [ebp - 0x260], 1
jge 0x41f7e6
cmp dword [ebp - 0x1c], 0
jge 0x41f7bc
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 0x41f7d2
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x458]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x41f796
mov dword [ebp - 0x45c], 0
jmp 0x41f801
mov eax, dword [ebp - 0x45c]
add eax, 1
mov dword [ebp - 0x45c], eax
cmp dword [ebp - 0x45c], 2
jge 0x41f818
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x45c]
mov dword [ebp - 0x1c], ecx
jmp 0x41f7f2
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41f82a
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 0x41f842
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x460], 0
jmp 0x41f85d
mov edx, dword [ebp - 0x460]
add edx, 1
mov dword [ebp - 0x460], edx
cmp dword [ebp - 0x460], 8
jge 0x41f874
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x460]
mov dword [ebp - 0x1c], eax
jmp 0x41f84e
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41f886
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 0x41f89e
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x464], 0
jmp 0x41f8b9
mov edx, dword [ebp - 0x464]
add edx, 1
mov dword [ebp - 0x464], edx
cmp dword [ebp - 0x464], 6
jge 0x41f8d0
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x464]
mov dword [ebp - 0x1c], eax
jmp 0x41f8aa
cmp dword [ebp - 0x1c], 0
jge 0x41f8de
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 0x41f8f6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x468], 0
jmp 0x41f911
mov edx, dword [ebp - 0x468]
add edx, 1
mov dword [ebp - 0x468], edx
cmp dword [ebp - 0x468], 3
jge 0x41f95e
mov eax, dword [ebp - 0x468]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x41f940
mov eax, dword [ebp - 0x468]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x41f950
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x468]
mov dword [ebp - 0x1c], edx
jmp 0x41f95c
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x468]
mov dword [ebp - 0x1c], eax
jmp 0x41f902
mov dword [ebp - 0x46c], 0
jmp 0x41f979
mov ecx, dword [ebp - 0x46c]
add ecx, 1
mov dword [ebp - 0x46c], ecx
cmp dword [ebp - 0x46c], 6
jge 0x41f990
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x46c]
mov dword [ebp - 0x1c], edx
jmp 0x41f96a
cmp dword [ebp - 0x1c], 0
jge 0x41f99e
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 0x41f9b6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x470], 0
jmp 0x41f9d1
mov edx, dword [ebp - 0x470]
add edx, 1
mov dword [ebp - 0x470], edx
cmp dword [ebp - 0x470], 7
jge 0x41fa1e
cmp dword [ebp - 0x1c], 0
jge 0x41f9e8
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 0x41f9fe
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x474], 0xfa
lea edx, [ebp - 0x474]
push edx
lea eax, [ebp - 0x670]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41f9c2
mov ecx, 1
test ecx, ecx
je 0x41fa58
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x674], eax
mov eax, dword [ebp - 0x674]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41fa4a
jmp 0x41fa58
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x674]
mov dword [ebp - 0x1c], edx
jmp 0x41fa1e
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x678], 0
jmp 0x41fa79
mov ecx, dword [ebp - 0x678]
add ecx, 1
mov dword [ebp - 0x678], ecx
cmp dword [ebp - 0x678], 8
jge 0x41fa90
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x678]
mov dword [ebp - 0x1c], edx
jmp 0x41fa6a
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41faa2
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 0x41faba
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x67c], 0
jmp 0x41fad5
mov edx, dword [ebp - 0x67c]
add edx, 1
mov dword [ebp - 0x67c], edx
cmp dword [ebp - 0x67c], 8
jge 0x41fb22
cmp dword [ebp - 0x1c], 0
jge 0x41faec
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 0x41fb02
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x680], 0xfa
lea edx, [ebp - 0x680]
push edx
lea eax, [ebp - 0x878]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41fac6
mov dword [ebp - 0x87c], 0
jmp 0x41fb3d
mov ecx, dword [ebp - 0x87c]
add ecx, 1
mov dword [ebp - 0x87c], ecx
cmp dword [ebp - 0x87c], 3
jge 0x41fb54
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x87c]
mov dword [ebp - 0x1c], edx
jmp 0x41fb2e
cmp dword [ebp - 0x1c], 0
jge 0x41fb62
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 0x41fb7a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x880], 0
jmp 0x41fb95
mov edx, dword [ebp - 0x880]
add edx, 1
mov dword [ebp - 0x880], edx
cmp dword [ebp - 0x880], 4
jge 0x41fbac
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x880]
mov dword [ebp - 0x1c], eax
jmp 0x41fb86
cmp dword [ebp - 0x1c], 0
jge 0x41fbba
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 0x41fbd2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x884], 0
jmp 0x41fbed
mov edx, dword [ebp - 0x884]
add edx, 1
mov dword [ebp - 0x884], edx
cmp dword [ebp - 0x884], 0
jge 0x41fc3a
mov eax, dword [ebp - 0x884]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x41fc1c
mov eax, dword [ebp - 0x884]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x41fc2c
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x884]
mov dword [ebp - 0x1c], edx
jmp 0x41fc38
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x884]
mov dword [ebp - 0x1c], eax
jmp 0x41fbde
mov ecx, 1
test ecx, ecx
je 0x41fc74
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 0x41fc66
jmp 0x41fc74
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x888]
mov dword [ebp - 0x1c], edx
jmp 0x41fc3a
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x88c], 0
jmp 0x41fc98
mov ecx, dword [ebp - 0x88c]
add ecx, 1
mov dword [ebp - 0x88c], ecx
cmp dword [ebp - 0x88c], 5
jge 0x41fcd9
cmp dword [ebp - 0x1c], 0
jge 0x41fcaf
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 0x41fcc5
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa88]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x41fc89
mov eax, 1
test eax, eax
je 0x41fd13
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xa8c], eax
mov eax, dword [ebp - 0xa8c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41fd05
jmp 0x41fd13
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xa8c]
mov dword [ebp - 0x1c], edx
jmp 0x41fcd9
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xa90], 0
jmp 0x41fd37
mov ecx, dword [ebp - 0xa90]
add ecx, 1
mov dword [ebp - 0xa90], ecx
cmp dword [ebp - 0xa90], 3
jge 0x41fd84
cmp dword [ebp - 0x1c], 0
jge 0x41fd4e
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 0x41fd64
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xa94], 0xfa
lea edx, [ebp - 0xa94]
push edx
lea eax, [ebp - 0xc90]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41fd28
mov dword [ebp - 0xc94], 0
jmp 0x41fd9f
mov ecx, dword [ebp - 0xc94]
add ecx, 1
mov dword [ebp - 0xc94], ecx
cmp dword [ebp - 0xc94], 5
jge 0x41fdec
mov eax, dword [ebp - 0xc94]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x41fdce
mov eax, dword [ebp - 0xc94]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x41fdde
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc94]
mov dword [ebp - 0x1c], edx
jmp 0x41fdea
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc94]
mov dword [ebp - 0x1c], eax
jmp 0x41fd90
mov dword [ebp - 0xc98], 0
jmp 0x41fe07
mov ecx, dword [ebp - 0xc98]
add ecx, 1
mov dword [ebp - 0xc98], ecx
cmp dword [ebp - 0xc98], 5
jge 0x41fe54
cmp dword [ebp - 0x1c], 0
jge 0x41fe1e
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 0x41fe34
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc9c], 0xfa
lea edx, [ebp - 0xc9c]
push edx
lea eax, [ebp - 0xe98]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41fdf8
mov dword [ebp - 4], 3
mov dword [ebp - 0xe9c], 0xffffffff
mov dword [ebp - 0xea0], 0
jmp 0x41fe80
mov ecx, dword [ebp - 0xea0]
add ecx, 1
mov dword [ebp - 0xea0], ecx
cmp dword [ebp - 0xea0], 2
jge 0x41feb2
mov eax, dword [ebp - 0xea0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41fea7
mov edx, dword [ebp - 0xe9c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41fe71
mov dword [ebp - 4], 0xfffffffe
jmp 0x41fed2
mov dword [ebp - 0xea4], 0
jmp 0x41feed
mov edx, dword [ebp - 0xea4]
add edx, 1
mov dword [ebp - 0xea4], edx
cmp dword [ebp - 0xea4], 3
jge 0x41ff04
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xea4]
mov dword [ebp - 0x1c], eax
jmp 0x41fede
cmp dword [ebp - 0x1c], 0
jge 0x41ff12
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 0x41ff2a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x41ff64
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xea8], eax
mov eax, dword [ebp - 0xea8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41ff56
jmp 0x41ff64
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xea8]
mov dword [ebp - 0x1c], edx
jmp 0x41ff2a
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 4
mov dword [ebp - 0xeac], 0xffffffff
mov dword [ebp - 0xeb0], 0
jmp 0x41ff99
mov ecx, dword [ebp - 0xeb0]
add ecx, 1
mov dword [ebp - 0xeb0], ecx
cmp dword [ebp - 0xeb0], 6
jge 0x41ffcb
mov eax, dword [ebp - 0xeb0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41ffc0
mov edx, dword [ebp - 0xeac]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41ff8a
mov dword [ebp - 4], 0xfffffffe
jmp 0x41ffeb
mov dword [ebp - 0xeb4], 0
jmp 0x420006
mov edx, dword [ebp - 0xeb4]
add edx, 1
mov dword [ebp - 0xeb4], edx
cmp dword [ebp - 0xeb4], 6
jge 0x42001d
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0xeb4]
mov dword [ebp - 0x1c], eax
jmp 0x41fff7
cmp dword [ebp - 0x1c], 0
jge 0x42002b
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 0x420043
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x42007d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xeb8], eax
mov eax, dword [ebp - 0xeb8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x42006f
jmp 0x42007d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xeb8]
mov dword [ebp - 0x1c], edx
jmp 0x420043
mov eax, dword [ebp - 0x1c]
add eax, 7
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xebc], 0
jmp 0x4200a1
mov ecx, dword [ebp - 0xebc]
add ecx, 1
mov dword [ebp - 0xebc], ecx
cmp dword [ebp - 0xebc], 7
jge 0x4200ee
cmp dword [ebp - 0x1c], 0
jge 0x4200b8
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 0x4200ce
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xec0], 0xfa
lea edx, [ebp - 0xec0]
push edx
lea eax, [ebp - 0x10b8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x420092
mov dword [ebp - 0x10bc], 0
jmp 0x420109
mov ecx, dword [ebp - 0x10bc]
add ecx, 1
mov dword [ebp - 0x10bc], ecx
cmp dword [ebp - 0x10bc], 5
jge 0x420120
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x10bc]
mov dword [ebp - 0x1c], edx
jmp 0x4200fa
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x420132
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 0x42014a
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10c0], 0
jmp 0x420165
mov edx, dword [ebp - 0x10c0]
add edx, 1
mov dword [ebp - 0x10c0], edx
cmp dword [ebp - 0x10c0], 5
jge 0x4201b2
cmp dword [ebp - 0x1c], 0
jge 0x42017c
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 0x420192
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 0x420156
mov dword [ebp - 4], 5
mov dword [ebp - 0x12c4], 0xffffffff
mov dword [ebp - 0x12c8], 0
jmp 0x4201de
mov ecx, dword [ebp - 0x12c8]
add ecx, 1
mov dword [ebp - 0x12c8], ecx
cmp dword [ebp - 0x12c8], 6
jge 0x420210
mov eax, dword [ebp - 0x12c8]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x420205
mov edx, dword [ebp - 0x12c4]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4201cf
mov dword [ebp - 4], 0xfffffffe
jmp 0x420230
mov dword [ebp - 0x12cc], 0
jmp 0x42024b
mov edx, dword [ebp - 0x12cc]
add edx, 1
mov dword [ebp - 0x12cc], edx
cmp dword [ebp - 0x12cc], 3
jge 0x420298
cmp dword [ebp - 0x1c], 0
jge 0x420262
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 0x420278
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x12d0], 0xfa
lea edx, [ebp - 0x12d0]
push edx
lea eax, [ebp - 0x14c8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42023c
mov dword [ebp - 0x14cc], 0
jmp 0x4202b3
mov ecx, dword [ebp - 0x14cc]
add ecx, 1
mov dword [ebp - 0x14cc], ecx
cmp dword [ebp - 0x14cc], 0
jge 0x420300
mov eax, dword [ebp - 0x14cc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4202e2
mov eax, dword [ebp - 0x14cc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4202f2
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x14cc]
mov dword [ebp - 0x1c], edx
jmp 0x4202fe
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x14cc]
mov dword [ebp - 0x1c], eax
jmp 0x4202a4
mov dword [ebp - 4], 6
mov dword [ebp - 0x14d0], 0xffffffff
mov dword [ebp - 0x14d4], 0
jmp 0x42032c
mov ecx, dword [ebp - 0x14d4]
add ecx, 1
mov dword [ebp - 0x14d4], ecx
cmp dword [ebp - 0x14d4], 1
jge 0x42035e
mov eax, dword [ebp - 0x14d4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x420353
mov edx, dword [ebp - 0x14d0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x42031d
mov dword [ebp - 4], 0xfffffffe
jmp 0x42037e
mov dword [ebp - 0x14d8], 0
jmp 0x420399
mov edx, dword [ebp - 0x14d8]
add edx, 1
mov dword [ebp - 0x14d8], edx
cmp dword [ebp - 0x14d8], 4
jge 0x4203e6
cmp dword [ebp - 0x1c], 0
jge 0x4203b0
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 0x4203c6
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x14dc], 0xfa
lea edx, [ebp - 0x14dc]
push edx
lea eax, [ebp - 0x16d8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x42038a
mov ecx, 1
test ecx, ecx
je 0x420420
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 0x420412
jmp 0x420420
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x16dc]
mov dword [ebp - 0x1c], edx
jmp 0x4203e6
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 7
mov dword [ebp - 0x16e0], 0xffffffff
mov dword [ebp - 0x16e4], 0
jmp 0x420455
mov ecx, dword [ebp - 0x16e4]
add ecx, 1
mov dword [ebp - 0x16e4], ecx
cmp dword [ebp - 0x16e4], 1
jge 0x420487
mov eax, dword [ebp - 0x16e4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x42047c
mov edx, dword [ebp - 0x16e0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x420446
mov dword [ebp - 4], 0xfffffffe
jmp 0x4204a7
mov edx, 1
test edx, edx
je 0x4204e1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x16e8], eax
mov eax, dword [ebp - 0x16e8]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4204d3
jmp 0x4204e1
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x16e8]
mov dword [ebp - 0x1c], edx
jmp 0x4204a7
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x420524
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x16ec], eax
mov eax, dword [ebp - 0x16ec]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x420516
jmp 0x420524
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x16ec]
mov dword [ebp - 0x1c], edx
jmp 0x4204ea
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x16f0], 0
jmp 0x420548
cmp dword [ebp - 0x16f0], 3
jge 0x420589