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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x50ffe0
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x2f00
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x28], 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 0x41a6d9
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 5
jge 0x41a71d
cmp dword [ebp - 0x1c], 0
jge 0x41a6ed
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 0x41a703
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x24], 0xfa
lea edx, [ebp - 0x24]
push edx
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41a6d0
mov dword [ebp - 0x224], 0
jmp 0x41a738
mov ecx, dword [ebp - 0x224]
add ecx, 1
mov dword [ebp - 0x224], ecx
cmp dword [ebp - 0x224], 0x1a
jge 0x41a74f
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x224]
mov dword [ebp - 0x1c], edx
jmp 0x41a729
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41a761
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 0x41a779
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x228], 0
jmp 0x41a794
mov edx, dword [ebp - 0x228]
add edx, 1
mov dword [ebp - 0x228], edx
cmp dword [ebp - 0x228], 0x16
jge 0x41a7e1
cmp dword [ebp - 0x1c], 0
jge 0x41a7ab
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 0x41a7c1
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x22c], 0xfa
lea edx, [ebp - 0x22c]
push edx
lea eax, [ebp - 0x428]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41a785
mov ecx, 1
test ecx, ecx
je 0x41a81b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x42c], eax
mov eax, dword [ebp - 0x42c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41a80d
jmp 0x41a81b
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x42c]
mov dword [ebp - 0x1c], edx
jmp 0x41a7e1
mov eax, dword [ebp - 0x1c]
add eax, 0x11
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x430], 0
jmp 0x41a83f
mov ecx, dword [ebp - 0x430]
add ecx, 1
mov dword [ebp - 0x430], ecx
cmp dword [ebp - 0x430], 5
jge 0x41a88c
mov eax, dword [ebp - 0x430]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x41a86e
mov eax, dword [ebp - 0x430]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x41a87e
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x430]
mov dword [ebp - 0x1c], edx
jmp 0x41a88a
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x430]
mov dword [ebp - 0x1c], eax
jmp 0x41a830
mov dword [ebp - 0x434], 0
jmp 0x41a8a7
mov ecx, dword [ebp - 0x434]
add ecx, 1
mov dword [ebp - 0x434], ecx
cmp dword [ebp - 0x434], 0x1d
jge 0x41a8f4
mov eax, dword [ebp - 0x434]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x41a8d6
mov eax, dword [ebp - 0x434]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x41a8e6
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x434]
mov dword [ebp - 0x1c], edx
jmp 0x41a8f2
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x434]
mov dword [ebp - 0x1c], eax
jmp 0x41a898
mov ecx, 1
test ecx, ecx
je 0x41a92e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x438], eax
mov eax, dword [ebp - 0x438]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41a920
jmp 0x41a92e
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x438]
mov dword [ebp - 0x1c], edx
jmp 0x41a8f4
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x43c], 0xffffffff
mov dword [ebp - 0x440], 0
jmp 0x41a963
mov ecx, dword [ebp - 0x440]
add ecx, 1
mov dword [ebp - 0x440], ecx
cmp dword [ebp - 0x440], 0x10
jge 0x41a995
mov eax, dword [ebp - 0x440]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41a98a
mov edx, dword [ebp - 0x43c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41a954
mov dword [ebp - 4], 0xfffffffe
jmp 0x41a9b5
mov dword [ebp - 0x444], 0
jmp 0x41a9d0
mov edx, dword [ebp - 0x444]
add edx, 1
mov dword [ebp - 0x444], edx
cmp dword [ebp - 0x444], 0
jge 0x41a9e7
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x444]
mov dword [ebp - 0x1c], eax
jmp 0x41a9c1
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41a9f9
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 0x41aa11
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x448], 0
jmp 0x41aa2c
mov edx, dword [ebp - 0x448]
add edx, 1
mov dword [ebp - 0x448], edx
cmp dword [ebp - 0x448], 8
jge 0x41aa43
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x448]
mov dword [ebp - 0x1c], eax
jmp 0x41aa1d
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41aa55
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 0x41aa6d
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 1
mov dword [ebp - 0x44c], 0xffffffff
mov dword [ebp - 0x450], 0
jmp 0x41aa99
mov edx, dword [ebp - 0x450]
add edx, 1
mov dword [ebp - 0x450], edx
cmp dword [ebp - 0x450], 0
jge 0x41aacb
mov eax, dword [ebp - 0x450]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41aac0
mov edx, dword [ebp - 0x44c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41aa8a
mov dword [ebp - 4], 0xfffffffe
jmp 0x41aaeb
mov dword [ebp - 0x454], 0
jmp 0x41ab06
mov edx, dword [ebp - 0x454]
add edx, 1
mov dword [ebp - 0x454], edx
cmp dword [ebp - 0x454], 6
jge 0x41ab1d
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x454]
mov dword [ebp - 0x1c], eax
jmp 0x41aaf7
cmp dword [ebp - 0x1c], 0
jge 0x41ab2b
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 0x41ab43
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x458], 0
jmp 0x41ab5e
mov edx, dword [ebp - 0x458]
add edx, 1
mov dword [ebp - 0x458], edx
cmp dword [ebp - 0x458], 4
jge 0x41ab75
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x458]
mov dword [ebp - 0x1c], eax
jmp 0x41ab4f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41ab87
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 0x41ab9f
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x45c], 0
jmp 0x41abba
mov edx, dword [ebp - 0x45c]
add edx, 1
mov dword [ebp - 0x45c], edx
cmp dword [ebp - 0x45c], 0
jge 0x41ac07
cmp dword [ebp - 0x1c], 0
jge 0x41abd1
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 0x41abe7
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x460], 0xfa
lea edx, [ebp - 0x460]
push edx
lea eax, [ebp - 0x658]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41abab
mov dword [ebp - 0x65c], 0
jmp 0x41ac22
mov ecx, dword [ebp - 0x65c]
add ecx, 1
mov dword [ebp - 0x65c], ecx
cmp dword [ebp - 0x65c], 0
jge 0x41ac6f
cmp dword [ebp - 0x1c], 0
jge 0x41ac39
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 0x41ac4f
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x660], 0xfa
lea edx, [ebp - 0x660]
push edx
lea eax, [ebp - 0x858]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41ac13
mov dword [ebp - 0x85c], 0
jmp 0x41ac8a
mov ecx, dword [ebp - 0x85c]
add ecx, 1
mov dword [ebp - 0x85c], ecx
cmp dword [ebp - 0x85c], 2
jge 0x41aca1
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x85c]
mov dword [ebp - 0x1c], edx
jmp 0x41ac7b
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41acb3
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 0x41accb
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0x860], 0xffffffff
mov dword [ebp - 0x864], 0
jmp 0x41acf7
mov edx, dword [ebp - 0x864]
add edx, 1
mov dword [ebp - 0x864], edx
cmp dword [ebp - 0x864], 6
jge 0x41ad29
mov eax, dword [ebp - 0x864]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41ad1e
mov edx, dword [ebp - 0x860]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41ace8
mov dword [ebp - 4], 0xfffffffe
jmp 0x41ad49
mov dword [ebp - 0x868], 0
jmp 0x41ad64
mov edx, dword [ebp - 0x868]
add edx, 1
mov dword [ebp - 0x868], edx
cmp dword [ebp - 0x868], 4
jge 0x41ad7b
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x868]
mov dword [ebp - 0x1c], eax
jmp 0x41ad55
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41ad8d
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 0x41ada5
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x86c], 0
jmp 0x41adc0
mov edx, dword [ebp - 0x86c]
add edx, 1
mov dword [ebp - 0x86c], edx
cmp dword [ebp - 0x86c], 3
jge 0x41ae0d
cmp dword [ebp - 0x1c], 0
jge 0x41add7
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 0x41aded
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x870], 0xfa
lea edx, [ebp - 0x870]
push edx
lea eax, [ebp - 0xa68]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41adb1
mov dword [ebp - 0xa6c], 0
jmp 0x41ae28
mov ecx, dword [ebp - 0xa6c]
add ecx, 1
mov dword [ebp - 0xa6c], ecx
cmp dword [ebp - 0xa6c], 1
jge 0x41ae69
cmp dword [ebp - 0x1c], 0
jge 0x41ae3f
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 0x41ae55
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc68]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x41ae19
mov dword [ebp - 0xc6c], 0
jmp 0x41ae84
mov eax, dword [ebp - 0xc6c]
add eax, 1
mov dword [ebp - 0xc6c], eax
cmp dword [ebp - 0xc6c], 5
jge 0x41ae9b
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0xc6c]
mov dword [ebp - 0x1c], ecx
jmp 0x41ae75
cmp dword [ebp - 0x1c], 0
jge 0x41aea9
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 0x41aec1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x41aefb
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc70], eax
mov eax, dword [ebp - 0xc70]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41aeed
jmp 0x41aefb
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xc70]
mov dword [ebp - 0x1c], edx
jmp 0x41aec1
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc74], 0
jmp 0x41af1f
mov ecx, dword [ebp - 0xc74]
add ecx, 1
mov dword [ebp - 0xc74], ecx
cmp dword [ebp - 0xc74], 1
jge 0x41af60
cmp dword [ebp - 0x1c], 0
jge 0x41af36
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 0x41af4c
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xe70]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x41af10
mov eax, 1
test eax, eax
je 0x41af9a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe74], eax
mov eax, dword [ebp - 0xe74]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41af8c
jmp 0x41af9a
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xe74]
mov dword [ebp - 0x1c], edx
jmp 0x41af60
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe78], 0
jmp 0x41afbe
mov ecx, dword [ebp - 0xe78]
add ecx, 1
mov dword [ebp - 0xe78], ecx
cmp dword [ebp - 0xe78], 2
jge 0x41afff
cmp dword [ebp - 0x1c], 0
jge 0x41afd5
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 0x41afeb
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1070]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x41afaf
mov dword [ebp - 0x1074], 0
jmp 0x41b01a
mov eax, dword [ebp - 0x1074]
add eax, 1
mov dword [ebp - 0x1074], eax
cmp dword [ebp - 0x1074], 1
jge 0x41b031
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x1074]
mov dword [ebp - 0x1c], ecx
jmp 0x41b00b
cmp dword [ebp - 0x1c], 0
jge 0x41b03f
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 0x41b057
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1078], 0
jmp 0x41b072
mov edx, dword [ebp - 0x1078]
add edx, 1
mov dword [ebp - 0x1078], edx
cmp dword [ebp - 0x1078], 3
jge 0x41b089
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1078]
mov dword [ebp - 0x1c], eax
jmp 0x41b063
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41b09b
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 0x41b0b3
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0x107c], 0xffffffff
mov dword [ebp - 0x1080], 0
jmp 0x41b0df
mov edx, dword [ebp - 0x1080]
add edx, 1
mov dword [ebp - 0x1080], edx
cmp dword [ebp - 0x1080], 3
jge 0x41b111
mov eax, dword [ebp - 0x1080]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41b106
mov edx, dword [ebp - 0x107c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41b0d0
mov dword [ebp - 4], 0xfffffffe
jmp 0x41b131
mov dword [ebp - 0x1084], 0
jmp 0x41b14c
mov edx, dword [ebp - 0x1084]
add edx, 1
mov dword [ebp - 0x1084], edx
cmp dword [ebp - 0x1084], 1
jge 0x41b18d
cmp dword [ebp - 0x1c], 0
jge 0x41b163
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 0x41b179
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1280]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x41b13d
mov dword [ebp - 0x1284], 0
jmp 0x41b1a8
mov eax, dword [ebp - 0x1284]
add eax, 1
mov dword [ebp - 0x1284], eax
cmp dword [ebp - 0x1284], 4
jge 0x41b1bf
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1284]
mov dword [ebp - 0x1c], ecx
jmp 0x41b199
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41b1d1
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 0x41b1e9
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 4
mov dword [ebp - 0x1288], 0xffffffff
mov dword [ebp - 0x128c], 0
jmp 0x41b215
mov edx, dword [ebp - 0x128c]
add edx, 1
mov dword [ebp - 0x128c], edx
cmp dword [ebp - 0x128c], 3
jge 0x41b247
mov eax, dword [ebp - 0x128c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41b23c
mov edx, dword [ebp - 0x1288]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41b206
mov dword [ebp - 4], 0xfffffffe
jmp 0x41b267
mov dword [ebp - 0x1290], 0
jmp 0x41b282
mov edx, dword [ebp - 0x1290]
add edx, 1
mov dword [ebp - 0x1290], edx
cmp dword [ebp - 0x1290], 2
jge 0x41b2c3
cmp dword [ebp - 0x1c], 0
jge 0x41b299
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 0x41b2af
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1488]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x41b273
mov eax, 1
test eax, eax
je 0x41b2fd
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x148c], eax
mov eax, dword [ebp - 0x148c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41b2ef
jmp 0x41b2fd
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x148c]
mov dword [ebp - 0x1c], edx
jmp 0x41b2c3
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x41b340
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1490], eax
mov eax, dword [ebp - 0x1490]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41b332
jmp 0x41b340
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1490]
mov dword [ebp - 0x1c], edx
jmp 0x41b306
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x41b383
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1494], eax
mov eax, dword [ebp - 0x1494]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41b375
jmp 0x41b383
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1494]
mov dword [ebp - 0x1c], edx
jmp 0x41b349
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0x1498], 0xffffffff
mov dword [ebp - 0x149c], 0
jmp 0x41b3b5
mov ecx, dword [ebp - 0x149c]
add ecx, 1
mov dword [ebp - 0x149c], ecx
cmp dword [ebp - 0x149c], 3
jge 0x41b3e7
mov eax, dword [ebp - 0x149c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41b3dc
mov edx, dword [ebp - 0x1498]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41b3a6
mov dword [ebp - 4], 0xfffffffe
jmp 0x41b407
mov edx, 1
test edx, edx
je 0x41b441
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14a0], eax
mov eax, dword [ebp - 0x14a0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x41b433
jmp 0x41b441
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14a0]
mov dword [ebp - 0x1c], edx
jmp 0x41b407
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14a4], 0
jmp 0x41b465
mov ecx, dword [ebp - 0x14a4]
add ecx, 1
mov dword [ebp - 0x14a4], ecx
cmp dword [ebp - 0x14a4], 4
jge 0x41b47c
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x14a4]
mov dword [ebp - 0x1c], edx
jmp 0x41b456
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x41b48e
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 0x41b4a6
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14a8], 0
jmp 0x41b4c1
mov edx, dword [ebp - 0x14a8]
add edx, 1
mov dword [ebp - 0x14a8], edx
cmp dword [ebp - 0x14a8], 1
jge 0x41b50e
cmp dword [ebp - 0x1c], 0
jge 0x41b4d8
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 0x41b4ee
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x14ac], 0xfa
lea edx, [ebp - 0x14ac]
push edx
lea eax, [ebp - 0x16a8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41b4b2
mov dword [ebp - 0x16ac], 0
jmp 0x41b529
mov ecx, dword [ebp - 0x16ac]
add ecx, 1
mov dword [ebp - 0x16ac], ecx
cmp dword [ebp - 0x16ac], 1
jge 0x41b56a
cmp dword [ebp - 0x1c], 0
jge 0x41b540
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 0x41b556
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x18a8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x41b51a
mov dword [ebp - 0x18ac], 0
jmp 0x41b585
mov eax, dword [ebp - 0x18ac]
add eax, 1
mov dword [ebp - 0x18ac], eax
cmp dword [ebp - 0x18ac], 2
jge 0x41b59c
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x18ac]
mov dword [ebp - 0x1c], ecx
jmp 0x41b576
cmp dword [ebp - 0x1c], 0
jge 0x41b5aa
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 0x41b5c2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18b0], 0
jmp 0x41b5dd
mov edx, dword [ebp - 0x18b0]
add edx, 1
mov dword [ebp - 0x18b0], edx
cmp dword [ebp - 0x18b0], 4
jge 0x41b61e
cmp dword [ebp - 0x1c], 0
jge 0x41b5f4
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 0x41b60a
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1aa8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x41b5ce
mov dword [ebp - 0x1aac], 0
jmp 0x41b639
mov eax, dword [ebp - 0x1aac]
add eax, 1
mov dword [ebp - 0x1aac], eax
cmp dword [ebp - 0x1aac], 0
jge 0x41b67a
cmp dword [ebp - 0x1c], 0
jge 0x41b650
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 0x41b666
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1ca8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x41b62a
mov dword [ebp - 4], 6
mov dword [ebp - 0x1cac], 0xffffffff
mov dword [ebp - 0x1cb0], 0
jmp 0x41b6a6
mov eax, dword [ebp - 0x1cb0]
add eax, 1
mov dword [ebp - 0x1cb0], eax
cmp dword [ebp - 0x1cb0], 2
jge 0x41b6d8
mov eax, dword [ebp - 0x1cb0]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41b6cd
mov edx, dword [ebp - 0x1cac]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41b697
mov dword [ebp - 4], 0xfffffffe
jmp 0x41b6f8
mov dword [ebp - 4], 7
mov dword [ebp - 0x1cb4], 0xffffffff
mov dword [ebp - 0x1cb8], 0
jmp 0x41b724
mov edx, dword [ebp - 0x1cb8]
add edx, 1
mov dword [ebp - 0x1cb8], edx
cmp dword [ebp - 0x1cb8], 0
jge 0x41b756
mov eax, dword [ebp - 0x1cb8]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41b74b
mov edx, dword [ebp - 0x1cb4]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41b715
mov dword [ebp - 4], 0xfffffffe
jmp 0x41b776
mov dword [ebp - 0x1cbc], 0
jmp 0x41b791
mov edx, dword [ebp - 0x1cbc]
add edx, 1
mov dword [ebp - 0x1cbc], edx
cmp dword [ebp - 0x1cbc], 4
jge 0x41b7de
cmp dword [ebp - 0x1c], 0
jge 0x41b7a8
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 0x41b7be
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1cc0], 0xfa
lea edx, [ebp - 0x1cc0]
push edx
lea eax, [ebp - 0x1eb8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41b782
mov dword [ebp - 0x1ebc], 0
jmp 0x41b7f9
mov ecx, dword [ebp - 0x1ebc]
add ecx, 1
mov dword [ebp - 0x1ebc], ecx
cmp dword [ebp - 0x1ebc], 3
jge 0x41b846
cmp dword [ebp - 0x1c], 0
jge 0x41b810
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 0x41b826
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1ec0], 0xfa
lea edx, [ebp - 0x1ec0]
push edx
lea eax, [ebp - 0x20b8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x41b7ea
mov dword [ebp - 0x20bc], 0
jmp 0x41b861
mov ecx, dword [ebp - 0x20bc]
add ecx, 1
mov dword [ebp - 0x20bc], ecx
cmp dword [ebp - 0x20bc], 4
jge 0x41b8ae
mov eax, dword [ebp - 0x20bc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x41b890
mov eax, dword [ebp - 0x20bc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x41b8a0
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x20bc]
mov dword [ebp - 0x1c], edx
jmp 0x41b8ac
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x20bc]
mov dword [ebp - 0x1c], eax
jmp 0x41b852
mov dword [ebp - 4], 8
mov dword [ebp - 0x20c0], 0xffffffff
mov dword [ebp - 0x20c4], 0
jmp 0x41b8da
mov ecx, dword [ebp - 0x20c4]
add ecx, 1
mov dword [ebp - 0x20c4], ecx
cmp dword [ebp - 0x20c4], 2
jge 0x41b90c
mov eax, dword [ebp - 0x20c4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x41b901
mov edx, dword [ebp - 0x20c0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x41b8cb
mov dword [ebp - 4], 0xfffffffe
jmp 0x41b92c
mov dword [ebp - 0x20c8], 0
jmp 0x41b947
cmp dword [ebp - 0x20c8], 1
jge 0x41b994
cmp dword [ebp - 0x1c], 0
jge 0x41b95e
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 0x41b974
mov dword [ebp - 4], 9
mov dword [ebp - 0x22cc], 0xffffffff
mov dword [ebp - 0x22d0], 0
jmp 0x41b9c0
cmp dword [ebp - 0x22d0], 2
jge 0x41b9f2