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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x510cc8
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x34f8
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x3c], 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 0x440049
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x12
jge 0x44005a
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
jmp 0x440040
cmp dword [ebp - 0x1c], 0
jge 0x440068
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 0x440080
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], 0
jmp 0x440092
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], 0x2c
jge 0x4400a3
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
jmp 0x440089
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4400b5
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 0x4400cd
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], 0
jmp 0x4400df
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 0x11
jge 0x44011d
mov eax, dword [ebp - 0x28]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x440105
mov eax, dword [ebp - 0x28]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x440112
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x28]
mov dword [ebp - 0x1c], edx
jmp 0x44011b
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
jmp 0x4400d6
mov ecx, 1
test ecx, ecx
je 0x44014e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x440143
jmp 0x44014e
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], edx
jmp 0x44011d
mov eax, dword [ebp - 0x1c]
add eax, 0xd
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x30], 0
jmp 0x440169
mov ecx, dword [ebp - 0x30]
add ecx, 1
mov dword [ebp - 0x30], ecx
cmp dword [ebp - 0x30], 2
jge 0x44017a
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x30]
mov dword [ebp - 0x1c], edx
jmp 0x440160
cmp dword [ebp - 0x1c], 0
jge 0x440188
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 0x4401a0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x34], 0
jmp 0x4401b2
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 0x10
jge 0x4401f6
cmp dword [ebp - 0x1c], 0
jge 0x4401c6
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 0x4401dc
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x38], 0xfa
lea edx, [ebp - 0x38]
push edx
lea eax, [ebp - 0x238]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4401a9
mov dword [ebp - 0x23c], 0
jmp 0x440211
mov ecx, dword [ebp - 0x23c]
add ecx, 1
mov dword [ebp - 0x23c], ecx
cmp dword [ebp - 0x23c], 0xe
jge 0x44025e
cmp dword [ebp - 0x1c], 0
jge 0x440228
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 0x44023e
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x240], 0xfa
lea edx, [ebp - 0x240]
push edx
lea eax, [ebp - 0x438]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x440202
mov dword [ebp - 4], 0
mov dword [ebp - 0x43c], 0xffffffff
mov dword [ebp - 0x440], 0
jmp 0x44028a
mov ecx, dword [ebp - 0x440]
add ecx, 1
mov dword [ebp - 0x440], ecx
cmp dword [ebp - 0x440], 7
jge 0x4402bc
mov eax, dword [ebp - 0x440]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4402b1
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 0x44027b
mov dword [ebp - 4], 0xfffffffe
jmp 0x4402dc
mov dword [ebp - 0x444], 0
jmp 0x4402f7
mov edx, dword [ebp - 0x444]
add edx, 1
mov dword [ebp - 0x444], edx
cmp dword [ebp - 0x444], 2
jge 0x440344
cmp dword [ebp - 0x1c], 0
jge 0x44030e
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 0x440324
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x448], 0xfa
lea edx, [ebp - 0x448]
push edx
lea eax, [ebp - 0x640]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4402e8
mov dword [ebp - 0x644], 0
jmp 0x44035f
mov ecx, dword [ebp - 0x644]
add ecx, 1
mov dword [ebp - 0x644], ecx
cmp dword [ebp - 0x644], 8
jge 0x4403ac
cmp dword [ebp - 0x1c], 0
jge 0x440376
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 0x44038c
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x648], 0xfa
lea edx, [ebp - 0x648]
push edx
lea eax, [ebp - 0x840]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x440350
mov dword [ebp - 4], 1
mov dword [ebp - 0x844], 0xffffffff
mov dword [ebp - 0x848], 0
jmp 0x4403d8
mov ecx, dword [ebp - 0x848]
add ecx, 1
mov dword [ebp - 0x848], ecx
cmp dword [ebp - 0x848], 0x10
jge 0x44040a
mov eax, dword [ebp - 0x848]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4403ff
mov edx, dword [ebp - 0x844]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4403c9
mov dword [ebp - 4], 0xfffffffe
jmp 0x44042a
mov dword [ebp - 0x84c], 0
jmp 0x440445
mov edx, dword [ebp - 0x84c]
add edx, 1
mov dword [ebp - 0x84c], edx
cmp dword [ebp - 0x84c], 0x10
jge 0x44045c
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x84c]
mov dword [ebp - 0x1c], eax
jmp 0x440436
cmp dword [ebp - 0x1c], 0
jge 0x44046a
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 0x440482
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4404bc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x850], eax
mov eax, dword [ebp - 0x850]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4404ae
jmp 0x4404bc
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x850]
mov dword [ebp - 0x1c], edx
jmp 0x440482
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x854], 0
jmp 0x4404e0
mov ecx, dword [ebp - 0x854]
add ecx, 1
mov dword [ebp - 0x854], ecx
cmp dword [ebp - 0x854], 5
jge 0x44052d
cmp dword [ebp - 0x1c], 0
jge 0x4404f7
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 0x44050d
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x858], 0xfa
lea edx, [ebp - 0x858]
push edx
lea eax, [ebp - 0xa50]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4404d1
mov dword [ebp - 0xa54], 0
jmp 0x440548
mov ecx, dword [ebp - 0xa54]
add ecx, 1
mov dword [ebp - 0xa54], ecx
cmp dword [ebp - 0xa54], 0
jge 0x440589
cmp dword [ebp - 0x1c], 0
jge 0x44055f
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 0x440575
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xc50]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x440539
mov dword [ebp - 0xc54], 0
jmp 0x4405a4
mov eax, dword [ebp - 0xc54]
add eax, 1
mov dword [ebp - 0xc54], eax
cmp dword [ebp - 0xc54], 0xc
jge 0x4405bb
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0xc54]
mov dword [ebp - 0x1c], ecx
jmp 0x440595
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4405cd
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 0x4405e5
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x44061f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc58], eax
mov eax, dword [ebp - 0xc58]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x440611
jmp 0x44061f
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xc58]
mov dword [ebp - 0x1c], edx
jmp 0x4405e5
mov eax, dword [ebp - 0x1c]
add eax, 0xa
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 2
mov dword [ebp - 0xc5c], 0xffffffff
mov dword [ebp - 0xc60], 0
jmp 0x440654
mov ecx, dword [ebp - 0xc60]
add ecx, 1
mov dword [ebp - 0xc60], ecx
cmp dword [ebp - 0xc60], 0xf
jge 0x440686
mov eax, dword [ebp - 0xc60]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x44067b
mov edx, dword [ebp - 0xc5c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x440645
mov dword [ebp - 4], 0xfffffffe
jmp 0x4406a6
mov dword [ebp - 0xc64], 0
jmp 0x4406c1
mov edx, dword [ebp - 0xc64]
add edx, 1
mov dword [ebp - 0xc64], edx
cmp dword [ebp - 0xc64], 2
jge 0x44070e
cmp dword [ebp - 0x1c], 0
jge 0x4406d8
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 0x4406ee
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc68], 0xfa
lea edx, [ebp - 0xc68]
push edx
lea eax, [ebp - 0xe60]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4406b2
mov ecx, 1
test ecx, ecx
je 0x440748
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe64], eax
mov eax, dword [ebp - 0xe64]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x44073a
jmp 0x440748
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xe64]
mov dword [ebp - 0x1c], edx
jmp 0x44070e
mov eax, dword [ebp - 0x1c]
add eax, 0xb
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe68], 0
jmp 0x44076c
mov ecx, dword [ebp - 0xe68]
add ecx, 1
mov dword [ebp - 0xe68], ecx
cmp dword [ebp - 0xe68], 7
jge 0x4407ad
cmp dword [ebp - 0x1c], 0
jge 0x440783
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 0x440799
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1060]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x44075d
mov dword [ebp - 0x1064], 0
jmp 0x4407c8
mov eax, dword [ebp - 0x1064]
add eax, 1
mov dword [ebp - 0x1064], eax
cmp dword [ebp - 0x1064], 4
jge 0x4407df
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1064]
mov dword [ebp - 0x1c], ecx
jmp 0x4407b9
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4407f1
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 0x440809
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1068], 0
jmp 0x440824
mov edx, dword [ebp - 0x1068]
add edx, 1
mov dword [ebp - 0x1068], edx
cmp dword [ebp - 0x1068], 3
jge 0x440865
cmp dword [ebp - 0x1c], 0
jge 0x44083b
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 0x440851
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1260]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x440815
mov dword [ebp - 0x1264], 0
jmp 0x440880
mov eax, dword [ebp - 0x1264]
add eax, 1
mov dword [ebp - 0x1264], eax
cmp dword [ebp - 0x1264], 0
jge 0x4408cd
cmp dword [ebp - 0x1c], 0
jge 0x440897
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 0x4408ad
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1268], 0xfa
lea edx, [ebp - 0x1268]
push edx
lea eax, [ebp - 0x1460]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x440871
mov dword [ebp - 0x1464], 0
jmp 0x4408e8
mov ecx, dword [ebp - 0x1464]
add ecx, 1
mov dword [ebp - 0x1464], ecx
cmp dword [ebp - 0x1464], 4
jge 0x440935
cmp dword [ebp - 0x1c], 0
jge 0x4408ff
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 0x440915
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1468], 0xfa
lea edx, [ebp - 0x1468]
push edx
lea eax, [ebp - 0x1660]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4408d9
mov dword [ebp - 0x1664], 0
jmp 0x440950
mov ecx, dword [ebp - 0x1664]
add ecx, 1
mov dword [ebp - 0x1664], ecx
cmp dword [ebp - 0x1664], 4
jge 0x440967
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1664]
mov dword [ebp - 0x1c], edx
jmp 0x440941
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x440979
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 0x440991
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1668], 0
jmp 0x4409ac
mov edx, dword [ebp - 0x1668]
add edx, 1
mov dword [ebp - 0x1668], edx
cmp dword [ebp - 0x1668], 0
jge 0x4409ed
cmp dword [ebp - 0x1c], 0
jge 0x4409c3
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 0x4409d9
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1860]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x44099d
mov dword [ebp - 0x1864], 0
jmp 0x440a08
mov eax, dword [ebp - 0x1864]
add eax, 1
mov dword [ebp - 0x1864], eax
cmp dword [ebp - 0x1864], 2
jge 0x440a1f
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1864]
mov dword [ebp - 0x1c], ecx
jmp 0x4409f9
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x440a31
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 0x440a49
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1868], 0
jmp 0x440a64
mov edx, dword [ebp - 0x1868]
add edx, 1
mov dword [ebp - 0x1868], edx
cmp dword [ebp - 0x1868], 0
jge 0x440ab1
mov eax, dword [ebp - 0x1868]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x440a93
mov eax, dword [ebp - 0x1868]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x440aa3
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1868]
mov dword [ebp - 0x1c], edx
jmp 0x440aaf
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1868]
mov dword [ebp - 0x1c], eax
jmp 0x440a55
mov dword [ebp - 0x186c], 0
jmp 0x440acc
mov ecx, dword [ebp - 0x186c]
add ecx, 1
mov dword [ebp - 0x186c], ecx
cmp dword [ebp - 0x186c], 2
jge 0x440b19
mov eax, dword [ebp - 0x186c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x440afb
mov eax, dword [ebp - 0x186c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x440b0b
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x186c]
mov dword [ebp - 0x1c], edx
jmp 0x440b17
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x186c]
mov dword [ebp - 0x1c], eax
jmp 0x440abd
mov dword [ebp - 0x1870], 0
jmp 0x440b34
mov ecx, dword [ebp - 0x1870]
add ecx, 1
mov dword [ebp - 0x1870], ecx
cmp dword [ebp - 0x1870], 2
jge 0x440b4b
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1870]
mov dword [ebp - 0x1c], edx
jmp 0x440b25
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x440b5d
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 0x440b75
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1874], 0
jmp 0x440b90
mov edx, dword [ebp - 0x1874]
add edx, 1
mov dword [ebp - 0x1874], edx
cmp dword [ebp - 0x1874], 0
jge 0x440ba7
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1874]
mov dword [ebp - 0x1c], eax
jmp 0x440b81
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x440bb9
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 0x440bd1
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0x1878], 0xffffffff
mov dword [ebp - 0x187c], 0
jmp 0x440bfd
mov edx, dword [ebp - 0x187c]
add edx, 1
mov dword [ebp - 0x187c], edx
cmp dword [ebp - 0x187c], 3
jge 0x440c2f
mov eax, dword [ebp - 0x187c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x440c24
mov edx, dword [ebp - 0x1878]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x440bee
mov dword [ebp - 4], 0xfffffffe
jmp 0x440c4f
mov dword [ebp - 0x1880], 0
jmp 0x440c6a
mov edx, dword [ebp - 0x1880]
add edx, 1
mov dword [ebp - 0x1880], edx
cmp dword [ebp - 0x1880], 0
jge 0x440cb7
mov eax, dword [ebp - 0x1880]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x440c99
mov eax, dword [ebp - 0x1880]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x440ca9
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1880]
mov dword [ebp - 0x1c], edx
jmp 0x440cb5
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1880]
mov dword [ebp - 0x1c], eax
jmp 0x440c5b
mov dword [ebp - 0x1884], 0
jmp 0x440cd2
mov ecx, dword [ebp - 0x1884]
add ecx, 1
mov dword [ebp - 0x1884], ecx
cmp dword [ebp - 0x1884], 3
jge 0x440ce9
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1884]
mov dword [ebp - 0x1c], edx
jmp 0x440cc3
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x440cfb
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 0x440d13
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1888], 0
jmp 0x440d2e
mov edx, dword [ebp - 0x1888]
add edx, 1
mov dword [ebp - 0x1888], edx
cmp dword [ebp - 0x1888], 2
jge 0x440d6f
cmp dword [ebp - 0x1c], 0
jge 0x440d45
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 0x440d5b
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1a80]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x440d1f
mov dword [ebp - 4], 4
mov dword [ebp - 0x1a84], 0xffffffff
mov dword [ebp - 0x1a88], 0
jmp 0x440d9b
mov eax, dword [ebp - 0x1a88]
add eax, 1
mov dword [ebp - 0x1a88], eax
cmp dword [ebp - 0x1a88], 3
jge 0x440dcd
mov eax, dword [ebp - 0x1a88]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x440dc2
mov edx, dword [ebp - 0x1a84]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x440d8c
mov dword [ebp - 4], 0xfffffffe
jmp 0x440ded
mov dword [ebp - 0x1a8c], 0
jmp 0x440e08
mov edx, dword [ebp - 0x1a8c]
add edx, 1
mov dword [ebp - 0x1a8c], edx
cmp dword [ebp - 0x1a8c], 4
jge 0x440e49
cmp dword [ebp - 0x1c], 0
jge 0x440e1f
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 0x440e35
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1c88]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x440df9
mov dword [ebp - 0x1c8c], 0
jmp 0x440e64
mov eax, dword [ebp - 0x1c8c]
add eax, 1
mov dword [ebp - 0x1c8c], eax
cmp dword [ebp - 0x1c8c], 0
jge 0x440eb1
mov eax, dword [ebp - 0x1c8c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x440e93
mov eax, dword [ebp - 0x1c8c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x440ea3
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1c8c]
mov dword [ebp - 0x1c], edx
jmp 0x440eaf
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1c8c]
mov dword [ebp - 0x1c], eax
jmp 0x440e55
mov dword [ebp - 0x1c90], 0
jmp 0x440ecc
mov ecx, dword [ebp - 0x1c90]
add ecx, 1
mov dword [ebp - 0x1c90], ecx
cmp dword [ebp - 0x1c90], 4
jge 0x440f0d
cmp dword [ebp - 0x1c], 0
jge 0x440ee3
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 0x440ef9
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1e88]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x440ebd
mov eax, 1
test eax, eax
je 0x440f47
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x1e8c], eax
mov eax, dword [ebp - 0x1e8c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x440f39
jmp 0x440f47
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x1e8c]
mov dword [ebp - 0x1c], edx
jmp 0x440f0d
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1e90], 0
jmp 0x440f6b
mov ecx, dword [ebp - 0x1e90]
add ecx, 1
mov dword [ebp - 0x1e90], ecx
cmp dword [ebp - 0x1e90], 0
jge 0x440fb8
cmp dword [ebp - 0x1c], 0
jge 0x440f82
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 0x440f98
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x1e94], 0xfa
lea edx, [ebp - 0x1e94]
push edx
lea eax, [ebp - 0x2090]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x440f5c
mov dword [ebp - 0x2094], 0
jmp 0x440fd3
mov ecx, dword [ebp - 0x2094]
add ecx, 1
mov dword [ebp - 0x2094], ecx
cmp dword [ebp - 0x2094], 1
jge 0x441014
cmp dword [ebp - 0x1c], 0
jge 0x440fea
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 0x441000
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x2290]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x440fc4
mov dword [ebp - 0x2294], 0
jmp 0x44102f
mov eax, dword [ebp - 0x2294]
add eax, 1
mov dword [ebp - 0x2294], eax
cmp dword [ebp - 0x2294], 0
jge 0x441046
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x2294]
mov dword [ebp - 0x1c], ecx
jmp 0x441020
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x441058
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 0x441070
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2298], 0
jmp 0x44108b
mov edx, dword [ebp - 0x2298]
add edx, 1
mov dword [ebp - 0x2298], edx
cmp dword [ebp - 0x2298], 1
jge 0x4410d8
mov eax, dword [ebp - 0x2298]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4410ba
mov eax, dword [ebp - 0x2298]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4410ca
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x2298]
mov dword [ebp - 0x1c], edx
jmp 0x4410d6
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x2298]
mov dword [ebp - 0x1c], eax
jmp 0x44107c
mov dword [ebp - 0x229c], 0
jmp 0x4410f3
mov ecx, dword [ebp - 0x229c]
add ecx, 1
mov dword [ebp - 0x229c], ecx
cmp dword [ebp - 0x229c], 1
jge 0x44110a
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x229c]
mov dword [ebp - 0x1c], edx
jmp 0x4410e4
cmp dword [ebp - 0x1c], 0
jge 0x441118
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 0x441130
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x22a0], 0
jmp 0x44114b
mov edx, dword [ebp - 0x22a0]
add edx, 1
mov dword [ebp - 0x22a0], edx
cmp dword [ebp - 0x22a0], 4
jge 0x44118c
cmp dword [ebp - 0x1c], 0
jge 0x441162
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 0x441178
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x2498]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x44113c
mov dword [ebp - 0x249c], 0
jmp 0x4411a7
mov eax, dword [ebp - 0x249c]
add eax, 1
mov dword [ebp - 0x249c], eax
cmp dword [ebp - 0x249c], 1
jge 0x4411be
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x249c]
mov dword [ebp - 0x1c], ecx
jmp 0x441198
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4411d0
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 0x4411e8
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0x24a0], 0xffffffff
mov dword [ebp - 0x24a4], 0
jmp 0x441214
mov edx, dword [ebp - 0x24a4]
add edx, 1
mov dword [ebp - 0x24a4], edx
cmp dword [ebp - 0x24a4], 4
jge 0x441246
mov eax, dword [ebp - 0x24a4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x44123b
mov edx, dword [ebp - 0x24a0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x441205
mov dword [ebp - 4], 0xfffffffe
jmp 0x441266
mov dword [ebp - 0x24a8], 0
jmp 0x441281
cmp dword [ebp - 0x24a8], 3
jge 0x441298