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

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x510e00
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x20e0
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 dword [ebp - 4], 0
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x24], 0
jmp 0x443557
mov eax, dword [ebp - 0x24]
add eax, 1
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x38
jge 0x443580
mov eax, dword [ebp - 0x24]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x443575
mov edx, dword [ebp - 0x20]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x44354e
mov dword [ebp - 4], 0xfffffffe
jmp 0x4435a0
mov dword [ebp - 0x28], 0
jmp 0x4435b2
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 0x3f
jge 0x4435f0
cmp dword [ebp - 0x1c], 0
jge 0x4435c6
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 0x4435dc
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x228]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4435a9
mov eax, 1
test eax, eax
je 0x44362a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp - 0x22c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x44361c
jmp 0x44362a
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x22c]
mov dword [ebp - 0x1c], edx
jmp 0x4435f0
mov eax, dword [ebp - 0x1c]
add eax, 5
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x230], 0
jmp 0x44364e
mov ecx, dword [ebp - 0x230]
add ecx, 1
mov dword [ebp - 0x230], ecx
cmp dword [ebp - 0x230], 7
jge 0x44369b
cmp dword [ebp - 0x1c], 0
jge 0x443665
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 0x44367b
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x234], 0xfa
lea edx, [ebp - 0x234]
push edx
lea eax, [ebp - 0x430]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x44363f
mov ecx, 1
test ecx, ecx
je 0x4436d5
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x434]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4436c7
jmp 0x4436d5
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x434]
mov dword [ebp - 0x1c], edx
jmp 0x44369b
mov eax, dword [ebp - 0x1c]
add eax, 0x19
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x438], 0
jmp 0x4436f9
mov ecx, dword [ebp - 0x438]
add ecx, 1
mov dword [ebp - 0x438], ecx
cmp dword [ebp - 0x438], 0xb
jge 0x443746
mov eax, dword [ebp - 0x438]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x443728
mov eax, dword [ebp - 0x438]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x443738
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x438]
mov dword [ebp - 0x1c], edx
jmp 0x443744
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x438]
mov dword [ebp - 0x1c], eax
jmp 0x4436ea
mov dword [ebp - 4], 1
mov dword [ebp - 0x43c], 0xffffffff
mov dword [ebp - 0x440], 0
jmp 0x443772
mov ecx, dword [ebp - 0x440]
add ecx, 1
mov dword [ebp - 0x440], ecx
cmp dword [ebp - 0x440], 6
jge 0x4437a4
mov eax, dword [ebp - 0x440]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x443799
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 0x443763
mov dword [ebp - 4], 0xfffffffe
jmp 0x4437c4
mov edx, 1
test edx, edx
je 0x4437fe
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x444], eax
mov eax, dword [ebp - 0x444]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4437f0
jmp 0x4437fe
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x444]
mov dword [ebp - 0x1c], edx
jmp 0x4437c4
mov eax, dword [ebp - 0x1c]
add eax, 2
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x448], 0
jmp 0x443822
mov ecx, dword [ebp - 0x448]
add ecx, 1
mov dword [ebp - 0x448], ecx
cmp dword [ebp - 0x448], 2
jge 0x443863
cmp dword [ebp - 0x1c], 0
jge 0x443839
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 0x44384f
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x640]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x443813
mov dword [ebp - 0x644], 0
jmp 0x44387e
mov eax, dword [ebp - 0x644]
add eax, 1
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 7
jge 0x443895
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x644]
mov dword [ebp - 0x1c], ecx
jmp 0x44386f
cmp dword [ebp - 0x1c], 0
jge 0x4438a3
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 0x4438bb
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x648], 0
jmp 0x4438d6
mov edx, dword [ebp - 0x648]
add edx, 1
mov dword [ebp - 0x648], edx
cmp dword [ebp - 0x648], 2
jge 0x4438ed
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x648]
mov dword [ebp - 0x1c], eax
jmp 0x4438c7
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4438ff
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 0x443917
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x64c], 0
jmp 0x443932
mov edx, dword [ebp - 0x64c]
add edx, 1
mov dword [ebp - 0x64c], edx
cmp dword [ebp - 0x64c], 6
jge 0x44397f
cmp dword [ebp - 0x1c], 0
jge 0x443949
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 0x44395f
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x650], 0xfa
lea edx, [ebp - 0x650]
push edx
lea eax, [ebp - 0x848]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x443923
mov dword [ebp - 0x84c], 0
jmp 0x44399a
mov ecx, dword [ebp - 0x84c]
add ecx, 1
mov dword [ebp - 0x84c], ecx
cmp dword [ebp - 0x84c], 0xc
jge 0x4439b1
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x84c]
mov dword [ebp - 0x1c], edx
jmp 0x44398b
cmp dword [ebp - 0x1c], 0
jge 0x4439bf
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 0x4439d7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x850], 0
jmp 0x4439f2
mov edx, dword [ebp - 0x850]
add edx, 1
mov dword [ebp - 0x850], edx
cmp dword [ebp - 0x850], 7
jge 0x443a09
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x850]
mov dword [ebp - 0x1c], eax
jmp 0x4439e3
cmp dword [ebp - 0x1c], 0
jge 0x443a17
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 0x443a2f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x854], 0
jmp 0x443a4a
mov edx, dword [ebp - 0x854]
add edx, 1
mov dword [ebp - 0x854], edx
cmp dword [ebp - 0x854], 5
jge 0x443a61
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x854]
mov dword [ebp - 0x1c], eax
jmp 0x443a3b
cmp dword [ebp - 0x1c], 0
jge 0x443a6f
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 0x443a87
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x858], 0
jmp 0x443aa2
mov edx, dword [ebp - 0x858]
add edx, 1
mov dword [ebp - 0x858], edx
cmp dword [ebp - 0x858], 2
jge 0x443ab9
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x858]
mov dword [ebp - 0x1c], eax
jmp 0x443a93
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x443acb
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 0x443ae3
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x85c], 0
jmp 0x443afe
mov edx, dword [ebp - 0x85c]
add edx, 1
mov dword [ebp - 0x85c], edx
cmp dword [ebp - 0x85c], 6
jge 0x443b4b
mov eax, dword [ebp - 0x85c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x443b2d
mov eax, dword [ebp - 0x85c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x443b3d
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x85c]
mov dword [ebp - 0x1c], edx
jmp 0x443b49
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x85c]
mov dword [ebp - 0x1c], eax
jmp 0x443aef
mov dword [ebp - 0x860], 0
jmp 0x443b66
mov ecx, dword [ebp - 0x860]
add ecx, 1
mov dword [ebp - 0x860], ecx
cmp dword [ebp - 0x860], 0
jge 0x443ba7
cmp dword [ebp - 0x1c], 0
jge 0x443b7d
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 0x443b93
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa58]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x443b57
mov dword [ebp - 0xa5c], 0
jmp 0x443bc2
mov eax, dword [ebp - 0xa5c]
add eax, 1
mov dword [ebp - 0xa5c], eax
cmp dword [ebp - 0xa5c], 8
jge 0x443c0f
cmp dword [ebp - 0x1c], 0
jge 0x443bd9
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 0x443bef
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xa60], 0xfa
lea edx, [ebp - 0xa60]
push edx
lea eax, [ebp - 0xc58]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x443bb3
mov dword [ebp - 4], 2
mov dword [ebp - 0xc5c], 0xffffffff
mov dword [ebp - 0xc60], 0
jmp 0x443c3b
mov ecx, dword [ebp - 0xc60]
add ecx, 1
mov dword [ebp - 0xc60], ecx
cmp dword [ebp - 0xc60], 2
jge 0x443c6d
mov eax, dword [ebp - 0xc60]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x443c62
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 0x443c2c
mov dword [ebp - 4], 0xfffffffe
jmp 0x443c8d
mov dword [ebp - 4], 3
mov dword [ebp - 0xc64], 0xffffffff
mov dword [ebp - 0xc68], 0
jmp 0x443cb9
mov edx, dword [ebp - 0xc68]
add edx, 1
mov dword [ebp - 0xc68], edx
cmp dword [ebp - 0xc68], 2
jge 0x443ceb
mov eax, dword [ebp - 0xc68]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x443ce0
mov edx, dword [ebp - 0xc64]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x443caa
mov dword [ebp - 4], 0xfffffffe
jmp 0x443d0b
mov dword [ebp - 0xc6c], 0
jmp 0x443d26
mov edx, dword [ebp - 0xc6c]
add edx, 1
mov dword [ebp - 0xc6c], edx
cmp dword [ebp - 0xc6c], 8
jge 0x443d73
mov eax, dword [ebp - 0xc6c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x443d55
mov eax, dword [ebp - 0xc6c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x443d65
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc6c]
mov dword [ebp - 0x1c], edx
jmp 0x443d71
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc6c]
mov dword [ebp - 0x1c], eax
jmp 0x443d17
mov dword [ebp - 0xc70], 0
jmp 0x443d8e
mov ecx, dword [ebp - 0xc70]
add ecx, 1
mov dword [ebp - 0xc70], ecx
cmp dword [ebp - 0xc70], 0
jge 0x443da5
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xc70]
mov dword [ebp - 0x1c], edx
jmp 0x443d7f
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x443db7
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 0x443dcf
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc74], 0
jmp 0x443dea
mov edx, dword [ebp - 0xc74]
add edx, 1
mov dword [ebp - 0xc74], edx
cmp dword [ebp - 0xc74], 2
jge 0x443e01
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xc74]
mov dword [ebp - 0x1c], eax
jmp 0x443ddb
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x443e13
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 0x443e2b
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc78], 0
jmp 0x443e46
mov edx, dword [ebp - 0xc78]
add edx, 1
mov dword [ebp - 0xc78], edx
cmp dword [ebp - 0xc78], 5
jge 0x443e5d
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0xc78]
mov dword [ebp - 0x1c], eax
jmp 0x443e37
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x443e6f
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 0x443e87
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc7c], 0
jmp 0x443ea2
mov edx, dword [ebp - 0xc7c]
add edx, 1
mov dword [ebp - 0xc7c], edx
cmp dword [ebp - 0xc7c], 1
jge 0x443eef
cmp dword [ebp - 0x1c], 0
jge 0x443eb9
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 0x443ecf
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc80], 0xfa
lea edx, [ebp - 0xc80]
push edx
lea eax, [ebp - 0xe78]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x443e93
mov dword [ebp - 4], 4
mov dword [ebp - 0xe7c], 0xffffffff
mov dword [ebp - 0xe80], 0
jmp 0x443f1b
mov ecx, dword [ebp - 0xe80]
add ecx, 1
mov dword [ebp - 0xe80], ecx
cmp dword [ebp - 0xe80], 7
jge 0x443f4d
mov eax, dword [ebp - 0xe80]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x443f42
mov edx, dword [ebp - 0xe7c]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x443f0c
mov dword [ebp - 4], 0xfffffffe
jmp 0x443f6d
mov dword [ebp - 4], 5
mov dword [ebp - 0xe84], 0xffffffff
mov dword [ebp - 0xe88], 0
jmp 0x443f99
mov edx, dword [ebp - 0xe88]
add edx, 1
mov dword [ebp - 0xe88], edx
cmp dword [ebp - 0xe88], 2
jge 0x443fcb
mov eax, dword [ebp - 0xe88]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x443fc0
mov edx, dword [ebp - 0xe84]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x443f8a
mov dword [ebp - 4], 0xfffffffe
jmp 0x443feb
mov edx, 1
test edx, edx
je 0x444025
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe8c], eax
mov eax, dword [ebp - 0xe8c]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x444017
jmp 0x444025
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xe8c]
mov dword [ebp - 0x1c], edx
jmp 0x443feb
mov eax, dword [ebp - 0x1c]
add eax, 7
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x444068
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xe90], eax
mov eax, dword [ebp - 0xe90]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x44405a
jmp 0x444068
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xe90]
mov dword [ebp - 0x1c], edx
jmp 0x44402e
mov eax, dword [ebp - 0x1c]
add eax, 6
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe94], 0
jmp 0x44408c
mov ecx, dword [ebp - 0xe94]
add ecx, 1
mov dword [ebp - 0xe94], ecx
cmp dword [ebp - 0xe94], 6
jge 0x4440d9
mov eax, dword [ebp - 0xe94]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4440bb
mov eax, dword [ebp - 0xe94]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4440cb
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xe94]
mov dword [ebp - 0x1c], edx
jmp 0x4440d7
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xe94]
mov dword [ebp - 0x1c], eax
jmp 0x44407d
mov dword [ebp - 0xe98], 0
jmp 0x4440f4
mov ecx, dword [ebp - 0xe98]
add ecx, 1
mov dword [ebp - 0xe98], ecx
cmp dword [ebp - 0xe98], 1
jge 0x444141
cmp dword [ebp - 0x1c], 0
jge 0x44410b
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 0x444121
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xe9c], 0xfa
lea edx, [ebp - 0xe9c]
push edx
lea eax, [ebp - 0x1098]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4440e5
mov dword [ebp - 0x109c], 0
jmp 0x44415c
mov ecx, dword [ebp - 0x109c]
add ecx, 1
mov dword [ebp - 0x109c], ecx
cmp dword [ebp - 0x109c], 5
jge 0x444173
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x109c]
mov dword [ebp - 0x1c], edx
jmp 0x44414d
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x444185
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 0x44419d
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4441d7
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x10a0], eax
mov eax, dword [ebp - 0x10a0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4441c9
jmp 0x4441d7
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x10a0]
mov dword [ebp - 0x1c], edx
jmp 0x44419d
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10a4], 0
jmp 0x4441fb
mov ecx, dword [ebp - 0x10a4]
add ecx, 1
mov dword [ebp - 0x10a4], ecx
cmp dword [ebp - 0x10a4], 5
jge 0x444212
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x10a4]
mov dword [ebp - 0x1c], edx
jmp 0x4441ec
cmp dword [ebp - 0x1c], 0
jge 0x444220
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 0x444238
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10a8], 0
jmp 0x444253
mov edx, dword [ebp - 0x10a8]
add edx, 1
mov dword [ebp - 0x10a8], edx
cmp dword [ebp - 0x10a8], 5
jge 0x4442a0
cmp dword [ebp - 0x1c], 0
jge 0x44426a
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 0x444280
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x10ac], 0xfa
lea edx, [ebp - 0x10ac]
push edx
lea eax, [ebp - 0x12a8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x444244
mov dword [ebp - 0x12ac], 0
jmp 0x4442bb
mov ecx, dword [ebp - 0x12ac]
add ecx, 1
mov dword [ebp - 0x12ac], ecx
cmp dword [ebp - 0x12ac], 7
jge 0x444308
cmp dword [ebp - 0x1c], 0
jge 0x4442d2
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 0x4442e8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x12b0], 0xfa
lea edx, [ebp - 0x12b0]
push edx
lea eax, [ebp - 0x14a8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4442ac
mov dword [ebp - 0x14ac], 0
jmp 0x444323
mov ecx, dword [ebp - 0x14ac]
add ecx, 1
mov dword [ebp - 0x14ac], ecx
cmp dword [ebp - 0x14ac], 2
jge 0x444364
cmp dword [ebp - 0x1c], 0
jge 0x44433a
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 0x444350
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x16a8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x444314
mov eax, 1
test eax, eax
je 0x44439e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x16ac], eax
mov eax, dword [ebp - 0x16ac]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x444390
jmp 0x44439e
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x16ac]
mov dword [ebp - 0x1c], edx
jmp 0x444364
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 6
mov dword [ebp - 0x16b0], 0xffffffff
mov dword [ebp - 0x16b4], 0
jmp 0x4443d3
mov ecx, dword [ebp - 0x16b4]
add ecx, 1
mov dword [ebp - 0x16b4], ecx
cmp dword [ebp - 0x16b4], 3
jge 0x444405
mov eax, dword [ebp - 0x16b4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4443fa
mov edx, dword [ebp - 0x16b0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4443c4
mov dword [ebp - 4], 0xfffffffe
jmp 0x444425
mov dword [ebp - 0x16b8], 0
jmp 0x444440
mov edx, dword [ebp - 0x16b8]
add edx, 1
mov dword [ebp - 0x16b8], edx
cmp dword [ebp - 0x16b8], 1
jge 0x444457
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x16b8]
mov dword [ebp - 0x1c], eax
jmp 0x444431
cmp dword [ebp - 0x1c], 0
jge 0x444465
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 0x44447d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x16bc], 0
jmp 0x444498
mov edx, dword [ebp - 0x16bc]
add edx, 1
mov dword [ebp - 0x16bc], edx
cmp dword [ebp - 0x16bc], 3
jge 0x4444e5
cmp dword [ebp - 0x1c], 0
jge 0x4444af
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 0x4444c5
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x16c0], 0xfa
lea edx, [ebp - 0x16c0]
push edx
lea eax, [ebp - 0x18b8]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x444489
mov dword [ebp - 0x18bc], 0
jmp 0x444500
mov ecx, dword [ebp - 0x18bc]
add ecx, 1
mov dword [ebp - 0x18bc], ecx
cmp dword [ebp - 0x18bc], 1
jge 0x444517
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x18bc]
mov dword [ebp - 0x1c], edx
jmp 0x4444f1
cmp dword [ebp - 0x1c], 0
jge 0x444525
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 0x44453d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18c0], 0
jmp 0x444558
mov edx, dword [ebp - 0x18c0]
add edx, 1
mov dword [ebp - 0x18c0], edx
cmp dword [ebp - 0x18c0], 1
jge 0x44456f
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x18c0]
mov dword [ebp - 0x1c], eax
jmp 0x444549
cmp dword [ebp - 0x1c], 0
jge 0x44457d
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 0x444595
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18c4], 0
jmp 0x4445b0
mov edx, dword [ebp - 0x18c4]
add edx, 1
mov dword [ebp - 0x18c4], edx
cmp dword [ebp - 0x18c4], 1
jge 0x4445f1
cmp dword [ebp - 0x1c], 0
jge 0x4445c7
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 0x4445dd
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1ac0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4445a1
mov dword [ebp - 0x1ac4], 0
jmp 0x44460c
mov eax, dword [ebp - 0x1ac4]
add eax, 1
mov dword [ebp - 0x1ac4], eax
cmp dword [ebp - 0x1ac4], 3
jge 0x444623
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x1ac4]
mov dword [ebp - 0x1c], ecx
jmp 0x4445fd
cmp dword [ebp - 0x1c], 0
jge 0x444631
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 0x444649
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1ac8], 0
jmp 0x444664
mov edx, dword [ebp - 0x1ac8]
add edx, 1
mov dword [ebp - 0x1ac8], edx
cmp dword [ebp - 0x1ac8], 1
jge 0x4446a5
cmp dword [ebp - 0x1c], 0
jge 0x44467b
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 0x444691
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1cc0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x444655
mov dword [ebp - 0x1cc4], 0
jmp 0x4446c0
mov eax, dword [ebp - 0x1cc4]
add eax, 1
mov dword [ebp - 0x1cc4], eax
cmp dword [ebp - 0x1cc4], 3
jge 0x4446d7
mov ecx, dword [ebp - 0x1c]
xor ecx, dword [ebp - 0x1cc4]
mov dword [ebp - 0x1c], ecx
jmp 0x4446b1
cmp dword [ebp - 0x1c], 0
jge 0x4446e5
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 0x4446fd
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1cc8], 0
jmp 0x444718