Function at 0x4363e0
Capabilities:
Get common file path
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x510930
push 0x40b390
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x22e0
call fcn.004149d0
mov eax, dword [0x517138]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x24], 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 0x436439
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x34
jge 0x436477
cmp dword [ebp - 0x1c], 0
jge 0x43644d
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 0x436463
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x220]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x436430
mov eax, 1
test eax, eax
je 0x4364b1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x224]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4364a3
jmp 0x4364b1
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x224]
mov dword [ebp - 0x1c], edx
jmp 0x436477
mov eax, dword [ebp - 0x1c]
add eax, 0x25
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x228], 0
jmp 0x4364d5
mov ecx, dword [ebp - 0x228]
add ecx, 1
mov dword [ebp - 0x228], ecx
cmp dword [ebp - 0x228], 0
jge 0x436522
mov eax, dword [ebp - 0x228]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x436504
mov eax, dword [ebp - 0x228]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x436514
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x228]
mov dword [ebp - 0x1c], edx
jmp 0x436520
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x228]
mov dword [ebp - 0x1c], eax
jmp 0x4364c6
mov ecx, 1
test ecx, ecx
je 0x43655c
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 0x43654e
jmp 0x43655c
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x22c]
mov dword [ebp - 0x1c], edx
jmp 0x436522
mov eax, dword [ebp - 0x1c]
add eax, 0x12
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x43659f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x230]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x436591
jmp 0x43659f
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x230]
mov dword [ebp - 0x1c], edx
jmp 0x436565
mov eax, dword [ebp - 0x1c]
add eax, 0x19
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x234], 0xffffffff
mov dword [ebp - 0x238], 0
jmp 0x4365d4
mov ecx, dword [ebp - 0x238]
add ecx, 1
mov dword [ebp - 0x238], ecx
cmp dword [ebp - 0x238], 0xf
jge 0x436606
mov eax, dword [ebp - 0x238]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x4365fb
mov edx, dword [ebp - 0x234]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4365c5
mov dword [ebp - 4], 0xfffffffe
jmp 0x436626
mov dword [ebp - 0x23c], 0
jmp 0x436641
mov edx, dword [ebp - 0x23c]
add edx, 1
mov dword [ebp - 0x23c], edx
cmp dword [ebp - 0x23c], 9
jge 0x436658
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x23c]
mov dword [ebp - 0x1c], eax
jmp 0x436632
cmp dword [ebp - 0x1c], 0
jge 0x436666
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 0x43667e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4366b8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x240], eax
mov eax, dword [ebp - 0x240]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4366aa
jmp 0x4366b8
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x240]
mov dword [ebp - 0x1c], edx
jmp 0x43667e
mov eax, dword [ebp - 0x1c]
add eax, 8
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x244], 0
jmp 0x4366dc
mov ecx, dword [ebp - 0x244]
add ecx, 1
mov dword [ebp - 0x244], ecx
cmp dword [ebp - 0x244], 8
jge 0x4366f3
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x244]
mov dword [ebp - 0x1c], edx
jmp 0x4366cd
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x436705
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 0x43671d
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x248], 0
jmp 0x436738
mov edx, dword [ebp - 0x248]
add edx, 1
mov dword [ebp - 0x248], edx
cmp dword [ebp - 0x248], 7
jge 0x436779
cmp dword [ebp - 0x1c], 0
jge 0x43674f
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 0x436765
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x440]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x436729
mov dword [ebp - 0x444], 0
jmp 0x436794
mov eax, dword [ebp - 0x444]
add eax, 1
mov dword [ebp - 0x444], eax
cmp dword [ebp - 0x444], 0
jge 0x4367ab
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x444]
mov dword [ebp - 0x1c], ecx
jmp 0x436785
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x4367bd
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 0x4367d5
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 1
mov dword [ebp - 0x448], 0xffffffff
mov dword [ebp - 0x44c], 0
jmp 0x436801
mov edx, dword [ebp - 0x44c]
add edx, 1
mov dword [ebp - 0x44c], edx
cmp dword [ebp - 0x44c], 1
jge 0x436833
mov eax, dword [ebp - 0x44c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x436828
mov edx, dword [ebp - 0x448]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4367f2
mov dword [ebp - 4], 0xfffffffe
jmp 0x436853
mov dword [ebp - 0x450], 0
jmp 0x43686e
mov edx, dword [ebp - 0x450]
add edx, 1
mov dword [ebp - 0x450], edx
cmp dword [ebp - 0x450], 1
jge 0x436885
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x450]
mov dword [ebp - 0x1c], eax
jmp 0x43685f
cmp dword [ebp - 0x1c], 0
jge 0x436893
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 0x4368ab
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x454], 0
jmp 0x4368c6
mov edx, dword [ebp - 0x454]
add edx, 1
mov dword [ebp - 0x454], edx
cmp dword [ebp - 0x454], 1
jge 0x4368dd
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x454]
mov dword [ebp - 0x1c], eax
jmp 0x4368b7
cmp dword [ebp - 0x1c], 0
jge 0x4368eb
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 0x436903
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x458], 0
jmp 0x43691e
mov edx, dword [ebp - 0x458]
add edx, 1
mov dword [ebp - 0x458], edx
cmp dword [ebp - 0x458], 1
jge 0x43696b
mov eax, dword [ebp - 0x458]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x43694d
mov eax, dword [ebp - 0x458]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x43695d
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x458]
mov dword [ebp - 0x1c], edx
jmp 0x436969
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x458]
mov dword [ebp - 0x1c], eax
jmp 0x43690f
mov dword [ebp - 0x45c], 0
jmp 0x436986
mov ecx, dword [ebp - 0x45c]
add ecx, 1
mov dword [ebp - 0x45c], ecx
cmp dword [ebp - 0x45c], 1
jge 0x4369d3
mov eax, dword [ebp - 0x45c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4369b5
mov eax, dword [ebp - 0x45c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4369c5
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x45c]
mov dword [ebp - 0x1c], edx
jmp 0x4369d1
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x45c]
mov dword [ebp - 0x1c], eax
jmp 0x436977
mov ecx, 1
test ecx, ecx
je 0x436a0d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x460]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4369ff
jmp 0x436a0d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x460]
mov dword [ebp - 0x1c], edx
jmp 0x4369d3
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x464], 0
jmp 0x436a31
mov ecx, dword [ebp - 0x464]
add ecx, 1
mov dword [ebp - 0x464], ecx
cmp dword [ebp - 0x464], 1
jge 0x436a48
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x464]
mov dword [ebp - 0x1c], edx
jmp 0x436a22
cmp dword [ebp - 0x1c], 0
jge 0x436a56
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 0x436a6e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x468], 0
jmp 0x436a89
mov edx, dword [ebp - 0x468]
add edx, 1
mov dword [ebp - 0x468], edx
cmp dword [ebp - 0x468], 2
jge 0x436ad6
cmp dword [ebp - 0x1c], 0
jge 0x436aa0
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 0x436ab6
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x46c], 0xfa
lea edx, [ebp - 0x46c]
push edx
lea eax, [ebp - 0x668]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x436a7a
mov dword [ebp - 0x66c], 0
jmp 0x436af1
mov ecx, dword [ebp - 0x66c]
add ecx, 1
mov dword [ebp - 0x66c], ecx
cmp dword [ebp - 0x66c], 0
jge 0x436b08
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x66c]
mov dword [ebp - 0x1c], edx
jmp 0x436ae2
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x436b1a
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 0x436b32
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x670], 0
jmp 0x436b4d
mov edx, dword [ebp - 0x670]
add edx, 1
mov dword [ebp - 0x670], edx
cmp dword [ebp - 0x670], 4
jge 0x436b9a
cmp dword [ebp - 0x1c], 0
jge 0x436b64
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 0x436b7a
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x674], 0xfa
lea edx, [ebp - 0x674]
push edx
lea eax, [ebp - 0x870]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x436b3e
mov dword [ebp - 4], 2
mov dword [ebp - 0x874], 0xffffffff
mov dword [ebp - 0x878], 0
jmp 0x436bc6
mov ecx, dword [ebp - 0x878]
add ecx, 1
mov dword [ebp - 0x878], ecx
cmp dword [ebp - 0x878], 2
jge 0x436bf8
mov eax, dword [ebp - 0x878]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x436bed
mov edx, dword [ebp - 0x874]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x436bb7
mov dword [ebp - 4], 0xfffffffe
jmp 0x436c18
mov dword [ebp - 0x87c], 0
jmp 0x436c33
mov edx, dword [ebp - 0x87c]
add edx, 1
mov dword [ebp - 0x87c], edx
cmp dword [ebp - 0x87c], 3
jge 0x436c80
mov eax, dword [ebp - 0x87c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x436c62
mov eax, dword [ebp - 0x87c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x436c72
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x87c]
mov dword [ebp - 0x1c], edx
jmp 0x436c7e
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x87c]
mov dword [ebp - 0x1c], eax
jmp 0x436c24
mov dword [ebp - 0x880], 0
jmp 0x436c9b
mov ecx, dword [ebp - 0x880]
add ecx, 1
mov dword [ebp - 0x880], ecx
cmp dword [ebp - 0x880], 3
jge 0x436cb2
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x880]
mov dword [ebp - 0x1c], edx
jmp 0x436c8c
cmp dword [ebp - 0x1c], 0
jge 0x436cc0
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 0x436cd8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x884], 0
jmp 0x436cf3
mov edx, dword [ebp - 0x884]
add edx, 1
mov dword [ebp - 0x884], edx
cmp dword [ebp - 0x884], 3
jge 0x436d0a
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x884]
mov dword [ebp - 0x1c], eax
jmp 0x436ce4
cmp dword [ebp - 0x1c], 0
jge 0x436d18
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 0x436d30
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x888], 0
jmp 0x436d4b
mov edx, dword [ebp - 0x888]
add edx, 1
mov dword [ebp - 0x888], edx
cmp dword [ebp - 0x888], 3
jge 0x436d8c
cmp dword [ebp - 0x1c], 0
jge 0x436d62
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 0x436d78
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0xa80]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x436d3c
mov dword [ebp - 0xa84], 0
jmp 0x436da7
mov eax, dword [ebp - 0xa84]
add eax, 1
mov dword [ebp - 0xa84], eax
cmp dword [ebp - 0xa84], 4
jge 0x436df4
cmp dword [ebp - 0x1c], 0
jge 0x436dbe
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 0x436dd4
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xa88], 0xfa
lea edx, [ebp - 0xa88]
push edx
lea eax, [ebp - 0xc80]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x436d98
mov dword [ebp - 0xc84], 0
jmp 0x436e0f
mov ecx, dword [ebp - 0xc84]
add ecx, 1
mov dword [ebp - 0xc84], ecx
cmp dword [ebp - 0xc84], 4
jge 0x436e26
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xc84]
mov dword [ebp - 0x1c], edx
jmp 0x436e00
cmp dword [ebp - 0x1c], 0
jge 0x436e34
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 0x436e4c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 3
mov dword [ebp - 0xc88], 0xffffffff
mov dword [ebp - 0xc8c], 0
jmp 0x436e78
mov edx, dword [ebp - 0xc8c]
add edx, 1
mov dword [ebp - 0xc8c], edx
cmp dword [ebp - 0xc8c], 3
jge 0x436eaa
mov eax, dword [ebp - 0xc8c]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x436e9f
mov edx, dword [ebp - 0xc88]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x436e69
mov dword [ebp - 4], 0xfffffffe
jmp 0x436eca
mov dword [ebp - 0xc90], 0
jmp 0x436ee5
mov edx, dword [ebp - 0xc90]
add edx, 1
mov dword [ebp - 0xc90], edx
cmp dword [ebp - 0xc90], 0
jge 0x436f32
cmp dword [ebp - 0x1c], 0
jge 0x436efc
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 0x436f12
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc94], 0xfa
lea edx, [ebp - 0xc94]
push edx
lea eax, [ebp - 0xe90]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x436ed6
mov dword [ebp - 0xe94], 0
jmp 0x436f4d
mov ecx, dword [ebp - 0xe94]
add ecx, 1
mov dword [ebp - 0xe94], ecx
cmp dword [ebp - 0xe94], 0
jge 0x436f64
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xe94]
mov dword [ebp - 0x1c], edx
jmp 0x436f3e
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x436f76
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 0x436f8e
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xe98], 0
jmp 0x436fa9
mov edx, dword [ebp - 0xe98]
add edx, 1
mov dword [ebp - 0xe98], edx
cmp dword [ebp - 0xe98], 2
jge 0x436fea
cmp dword [ebp - 0x1c], 0
jge 0x436fc0
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 0x436fd6
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x1090]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x436f9a
mov dword [ebp - 0x1094], 0
jmp 0x437005
mov eax, dword [ebp - 0x1094]
add eax, 1
mov dword [ebp - 0x1094], eax
cmp dword [ebp - 0x1094], 3
jge 0x43701c
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1094]
mov dword [ebp - 0x1c], ecx
jmp 0x436ff6
cmp dword [ebp - 0x1c], 0xffff0001
jge 0x43702e
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 0x437046
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1098], 0
jmp 0x437061
mov edx, dword [ebp - 0x1098]
add edx, 1
mov dword [ebp - 0x1098], edx
cmp dword [ebp - 0x1098], 4
jge 0x4370ae
cmp dword [ebp - 0x1c], 0
jge 0x437078
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 0x43708e
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x109c], 0xfa
lea edx, [ebp - 0x109c]
push edx
lea eax, [ebp - 0x1298]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x437052
mov dword [ebp - 0x129c], 0
jmp 0x4370c9
mov ecx, dword [ebp - 0x129c]
add ecx, 1
mov dword [ebp - 0x129c], ecx
cmp dword [ebp - 0x129c], 4
jge 0x437116
mov eax, dword [ebp - 0x129c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4370f8
mov eax, dword [ebp - 0x129c]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x437108
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x129c]
mov dword [ebp - 0x1c], edx
jmp 0x437114
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x129c]
mov dword [ebp - 0x1c], eax
jmp 0x4370ba
mov ecx, 1
test ecx, ecx
je 0x437150
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x12a0], eax
mov eax, dword [ebp - 0x12a0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x437142
jmp 0x437150
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x12a0]
mov dword [ebp - 0x1c], edx
jmp 0x437116
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x12a4], 0
jmp 0x437174
mov ecx, dword [ebp - 0x12a4]
add ecx, 1
mov dword [ebp - 0x12a4], ecx
cmp dword [ebp - 0x12a4], 4
jge 0x4371b5
cmp dword [ebp - 0x1c], 0
jge 0x43718b
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 0x4371a1
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x14a0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x437165
mov dword [ebp - 4], 4
mov dword [ebp - 0x14a4], 0xffffffff
mov dword [ebp - 0x14a8], 0
jmp 0x4371e1
mov eax, dword [ebp - 0x14a8]
add eax, 1
mov dword [ebp - 0x14a8], eax
cmp dword [ebp - 0x14a8], 0
jge 0x437213
mov eax, dword [ebp - 0x14a8]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x437208
mov edx, dword [ebp - 0x14a4]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x4371d2
mov dword [ebp - 4], 0xfffffffe
jmp 0x437233
mov edx, 1
test edx, edx
je 0x43726d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14ac], eax
mov eax, dword [ebp - 0x14ac]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x43725f
jmp 0x43726d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14ac]
mov dword [ebp - 0x1c], edx
jmp 0x437233
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4372ad
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14b0], eax
mov eax, dword [ebp - 0x14b0]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x43729f
jmp 0x4372ad
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14b0]
mov dword [ebp - 0x1c], edx
jmp 0x437273
mov eax, dword [ebp - 0x1c]
add eax, 3
mov dword [ebp - 0x1c], eax
mov ecx, 1
test ecx, ecx
je 0x4372f0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14b4], eax
mov eax, dword [ebp - 0x14b4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4372e2
jmp 0x4372f0
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x14b4]
mov dword [ebp - 0x1c], edx
jmp 0x4372b6
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], 5
mov dword [ebp - 0x14b8], 0xffffffff
mov dword [ebp - 0x14bc], 0
jmp 0x437325
mov ecx, dword [ebp - 0x14bc]
add ecx, 1
mov dword [ebp - 0x14bc], ecx
cmp dword [ebp - 0x14bc], 1
jge 0x437357
mov eax, dword [ebp - 0x14bc]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x43734c
mov edx, dword [ebp - 0x14b8]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x437316
mov dword [ebp - 4], 0xfffffffe
jmp 0x437377
mov dword [ebp - 0x14c0], 0
jmp 0x437392
mov edx, dword [ebp - 0x14c0]
add edx, 1
mov dword [ebp - 0x14c0], edx
cmp dword [ebp - 0x14c0], 2
jge 0x4373d3
cmp dword [ebp - 0x1c], 0
jge 0x4373a9
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 0x4373bf
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x16b8]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x437383
mov dword [ebp - 0x16bc], 0
jmp 0x4373ee
mov eax, dword [ebp - 0x16bc]
add eax, 1
mov dword [ebp - 0x16bc], eax
cmp dword [ebp - 0x16bc], 3
jge 0x43743b
mov eax, dword [ebp - 0x16bc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x43741d
mov eax, dword [ebp - 0x16bc]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x43742d
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x16bc]
mov dword [ebp - 0x1c], edx
jmp 0x437439
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x16bc]
mov dword [ebp - 0x1c], eax
jmp 0x4373df
mov dword [ebp - 4], 6
mov dword [ebp - 0x16c0], 0xffffffff
mov dword [ebp - 0x16c4], 0
jmp 0x437467
mov ecx, dword [ebp - 0x16c4]
add ecx, 1
mov dword [ebp - 0x16c4], ecx
cmp dword [ebp - 0x16c4], 0
jge 0x437499
mov eax, dword [ebp - 0x16c4]
cdq
mov ecx, 0x25
idiv ecx
test edx, edx
jne 0x43748e
mov edx, dword [ebp - 0x16c0]
movsx eax, byte [edx]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x437458
mov dword [ebp - 4], 0xfffffffe
jmp 0x4374b9
mov dword [ebp - 0x16c8], 0
jmp 0x4374d4
mov edx, dword [ebp - 0x16c8]
add edx, 1
mov dword [ebp - 0x16c8], edx
cmp dword [ebp - 0x16c8], 4
jge 0x437515
cmp dword [ebp - 0x1c], 0
jge 0x4374eb
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 0x437501
mov dword [ebp - 0x1c], 0
push 0xfa
lea edx, [ebp - 0x18c0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
jmp 0x4374c5
mov eax, 1
test eax, eax
je 0x43754f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18c4], eax
mov eax, dword [ebp - 0x18c4]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x437541
jmp 0x43754f
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18c4]
mov dword [ebp - 0x1c], edx
jmp 0x437515
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18c8], 0
jmp 0x437573
mov ecx, dword [ebp - 0x18c8]
add ecx, 1
mov dword [ebp - 0x18c8], ecx
cmp dword [ebp - 0x18c8], 1
jge 0x43758a
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x18c8]
mov dword [ebp - 0x1c], edx
jmp 0x437564
cmp dword [ebp - 0x1c], 0
jge 0x437598
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 0x4375b0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov edx, 1
test edx, edx
je 0x4375ea
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18cc], eax
mov eax, dword [ebp - 0x18cc]
xor edx, edx
mov ecx, 7
div ecx
test edx, edx
jne 0x4375dc
jmp 0x4375ea
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x18cc]
mov dword [ebp - 0x1c], edx
jmp 0x4375b0
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18d0], 0
jmp 0x43760e
mov ecx, dword [ebp - 0x18d0]
add ecx, 1
mov dword [ebp - 0x18d0], ecx
cmp dword [ebp - 0x18d0], 0
jge 0x43765b
cmp dword [ebp - 0x1c], 0
jge 0x437625
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 0x43763b
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18d4], 0xfa
lea edx, [ebp - 0x18d4]
push edx
lea eax, [ebp - 0x1ad0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
jmp 0x4375ff
mov dword [ebp - 0x1ad4], 0
jmp 0x437676
mov ecx, dword [ebp - 0x1ad4]
add ecx, 1
mov dword [ebp - 0x1ad4], ecx
cmp dword [ebp - 0x1ad4], 2
jge 0x4376c3
mov eax, dword [ebp - 0x1ad4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 1
je 0x4376a5
mov eax, dword [ebp - 0x1ad4]
cdq
mov ecx, 5
idiv ecx
cmp edx, 4
jne 0x4376b5
nop
nop
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x1ad4]
mov dword [ebp - 0x1c], edx
jmp 0x4376c1
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0x1ad4]
mov dword [ebp - 0x1c], eax
jmp 0x437667
mov dword [ebp - 0x1ad8], 0
jmp 0x4376de
mov ecx, dword [ebp - 0x1ad8]
add ecx, 1
mov dword [ebp - 0x1ad8], ecx
cmp dword [ebp - 0x1ad8], 1
jge 0x4376f5
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0x1ad8]
mov dword [ebp - 0x1c], edx
jmp 0x4376cf
cmp dword [ebp - 0x1c], 0
jge 0x437703
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 0x43771b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1adc], 0
jmp 0x437736