Function at 0x140165f90
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 8], rcx
push rbx
mov eax, 0x1890
call fcn.1401d4c90
sub rsp, rax
mov qword [rsp + 0x1720], 0xfffffffffffffffe
mov rax, qword [0x1402a15c0]
xor rax, rsp
mov qword [rsp + 0x1888], rax
mov dword [rsp + 0x171c], 0
mov rcx, qword [rsp + 0x18a0]
call fcn.1400f4cc0
lea rcx, [rsp + 0xaf0]
call fcn.1401cc380
nop
mov rax, qword [rsp + 0x18a0]
cmp dword [rax + 0x694], 0
jne 0x140166052
lea rcx, [rsp + 0x1180]
call fcn.14000f1c0
nop
mov dword [rsp + 0x1318], 1
lea rcx, [rsp + 0x1180]
call fcn.1401cfc20
lea rcx, [rsp + 0x1320]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x694], r11d
lea rcx, [rsp + 0x1180]
call fcn.140005db0
mov rax, qword [rsp + 0x18a0]
mov eax, dword [rax + 0x694]
mov dword [rsp + 0xc88], eax
lea rcx, [rsp + 0xaf0]
call fcn.1401d0fb0
mov rax, qword [rsp + 0x18a0]
cmp dword [rax + 0x690], 0
jne 0x14016615f
lea rcx, [rsp + 0xd78]
lea rdx, [0x140239b44]
call fcn.1400020a0
lea rcx, [rsp + 0xcf0]
lea rdx, [0x140239c14]
call fcn.1400020a0
lea rcx, [rsp + 0xd48]
lea rdx, [0x140239c18]
call fcn.1400020a0
lea rcx, [rsp + 0xcd8]
lea rdx, [0x140239c1c]
call fcn.140006d50
movzx eax, al
test eax, eax
je 0x1401660f4
lea rcx, [rsp + 0xcd8]
lea rdx, [0x140239c24]
call fcn.1400020a0
lea rcx, [rsp + 0xd70]
lea rdx, [0x140239c28]
call fcn.140006d50
movzx eax, al
test eax, eax
je 0x140166123
lea rcx, [rsp + 0xd70]
lea rdx, [0x140239c2c]
call fcn.1400020a0
lea rcx, [rsp + 0xd58]
lea rdx, [0x140239c30]
call fcn.1400020a0
lea rcx, [rsp + 0xd60]
lea rdx, [0x140239c34]
call fcn.1400020a0
lea rcx, [rsp + 0xd68]
lea rdx, [0x140239c38]
call fcn.1400020a0
lea rcx, [rsp + 0xc98]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x210], r11d
lea rdx, [rsp + 0xc90]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x218
call fcn.140002d80
lea rdx, [rsp + 0xcb8]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2d0
call fcn.140002d80
lea rdx, [rsp + 0xca8]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2c8
call fcn.140002d80
lea rcx, [rsp + 0xcc0]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x6d8], r11d
lea rcx, [rsp + 0xcb0]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x6d4], r11d
lea rdx, [rsp + 0xcc8]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x710
call fcn.140002d80
lea rcx, [rsp + 0xcd0]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x6dc], r11d
lea rcx, [rsp + 0xca0]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x6d0], r11d
lea rcx, [rsp + 0xd48]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x698], r11d
lea rdx, [rsp + 0xcf8]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x458
call fcn.140002d80
mov dword [rsp + 0xe34], 0
lea rcx, [rsp + 0xd20]
lea r9, [rsp + 0xe34]
lea r8, [0x140239c3c]
lea rdx, [rsp + 0x15d8]
call fcn.1400065a0
mov qword [rsp + 0x1728], rax
mov rax, qword [rsp + 0x1728]
mov qword [rsp + 0x1730], rax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x448
mov rdx, qword [rsp + 0x1730]
call fcn.140002d80
nop
lea rcx, [rsp + 0x15d8]
call fcn.140001490
cmp dword [rsp + 0xe34], 0xffffffff
je 0x1401663b6
lea rcx, [rsp + 0xd20]
lea r9, [rsp + 0xe34]
lea r8, [0x140239c40]
lea rdx, [rsp + 0x15e0]
call fcn.1400065a0
mov qword [rsp + 0x1738], rax
mov rax, qword [rsp + 0x1738]
mov qword [rsp + 0x1740], rax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x450
mov rdx, qword [rsp + 0x1740]
call fcn.140002d80
nop
lea rcx, [rsp + 0x15e0]
call fcn.140001490
lea rdx, [rsp + 0xd20]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x440
call fcn.140002d80
lea rcx, [rsp + 0xd80]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x748], r11d
lea rcx, [rsp + 0xcf0]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x69c], r11d
lea rcx, [rsp + 0xd38]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x6a0], r11d
lea rcx, [rsp + 0xd50]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x758], r11d
lea rdx, [rsp + 0xd40]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x478
call fcn.140002d80
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x478
lea rdx, [0x140239c44]
call fcn.1400060b0
test eax, eax
jne 0x1401664c4
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x478
lea rdx, [0x140239c48]
call fcn.1400020a0
lea rcx, [rsp + 0xd28]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x6a4], r11d
lea rdx, [rsp + 0xd30]
lea rcx, [rsp + 0x60]
call fcn.140001430
nop
mov dword [rsp + 0xe34], 0
lea r9, [rsp + 0xe34]
lea r8, [0x140239c54]
lea rdx, [rsp + 0x15e8]
lea rcx, [rsp + 0x60]
call fcn.1400065a0
mov qword [rsp + 0x1748], rax
mov rax, qword [rsp + 0x1748]
mov qword [rsp + 0x1750], rax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x460
mov rdx, qword [rsp + 0x1750]
call fcn.140002d80
nop
lea rcx, [rsp + 0x15e8]
call fcn.140001490
cmp dword [rsp + 0xe34], 0xffffffff
je 0x140166669
lea r9, [rsp + 0xe34]
lea r8, [0x140239c58]
lea rdx, [rsp + 0x15f0]
lea rcx, [rsp + 0x60]
call fcn.1400065a0
mov qword [rsp + 0x1758], rax
mov rax, qword [rsp + 0x1758]
mov qword [rsp + 0x1760], rax
mov rdx, qword [rsp + 0x18a0]
add rdx, 0x460
lea r8, [0x140239c5c]
lea rcx, [rsp + 0x15f8]
call fcn.1400010b0
mov qword [rsp + 0x1768], rax
mov rax, qword [rsp + 0x1768]
mov qword [rsp + 0x1770], rax
mov r8, qword [rsp + 0x1760]
mov rdx, qword [rsp + 0x1770]
lea rcx, [rsp + 0x1600]
call fcn.140006bd0
mov qword [rsp + 0x1778], rax
mov rax, qword [rsp + 0x1778]
mov qword [rsp + 0x1780], rax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x460
mov rdx, qword [rsp + 0x1780]
call fcn.140002d80
nop
lea rcx, [rsp + 0x1600]
call fcn.140001490
nop
lea rcx, [rsp + 0x15f8]
call fcn.140001490
nop
lea rcx, [rsp + 0x15f0]
call fcn.140001490
cmp dword [rsp + 0xe34], 0xffffffff
je 0x1401666d6
lea r9, [rsp + 0xe34]
lea r8, [0x140239c60]
lea rdx, [rsp + 0x1608]
lea rcx, [rsp + 0x60]
call fcn.1400065a0
mov qword [rsp + 0x1788], rax
mov rax, qword [rsp + 0x1788]
mov qword [rsp + 0x1790], rax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x468
mov rdx, qword [rsp + 0x1790]
call fcn.140002d80
nop
lea rcx, [rsp + 0x1608]
call fcn.140001490
cmp dword [rsp + 0xe34], 0xffffffff
je 0x140166743
lea r9, [rsp + 0xe34]
lea r8, [0x140239c64]
lea rdx, [rsp + 0x1610]
lea rcx, [rsp + 0x60]
call fcn.1400065a0
mov qword [rsp + 0x1798], rax
mov rax, qword [rsp + 0x1798]
mov qword [rsp + 0x17a0], rax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x470
mov rdx, qword [rsp + 0x17a0]
call fcn.140002d80
nop
lea rcx, [rsp + 0x1610]
call fcn.140001490
lea rdx, [rsp + 0xd00]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2d8
call fcn.140002d80
lea rdx, [rsp + 0xd08]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2e0
call fcn.140002d80
lea rdx, [rsp + 0xd10]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2e8
call fcn.140002d80
lea rcx, [rsp + 0xd70]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x74c], r11d
lea rcx, [rsp + 0xd58]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov r11d, eax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x5e0], r11d
lea rdx, [rsp + 0xd60]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x528
call fcn.140002d80
lea rdx, [rsp + 0xd68]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x530
call fcn.140002d80
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
lea r8, [0x140239c68]
xor edx, edx
call fcn.140016940
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
mov r8d, 0xa
xor edx, edx
call fcn.140016e50
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
lea r8, [0x140239c70]
mov edx, 1
call fcn.140016940
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
mov r8d, reloc.OLEAUT32.dll_SafeArrayLock
mov edx, 1
call fcn.140016e50
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
lea r8, [0x140239c78]
mov edx, 2
call fcn.140016940
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
mov r8d, gethostbyname
mov edx, 2
call fcn.140016e50
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
lea r8, [0x140239c80]
mov edx, 3
call fcn.140016940
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
mov r8d, 0x64
mov edx, 3
call fcn.140016e50
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
lea r8, [0x140239c88]
mov edx, 4
call fcn.140016940
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
mov r8d, 0xc8
mov edx, 4
call fcn.140016e50
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
lea r8, [0x140239c90]
mov edx, 5
call fcn.140016940
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
mov r8d, 0x1f4
mov edx, 5
call fcn.140016e50
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
xor edx, edx
call fcn.140016910
mov dword [rsp + 0x14c0], 0
jmp 0x1401669c5
mov eax, dword [rsp + 0x14c0]
add eax, 1
mov dword [rsp + 0x14c0], eax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
call fcn.140016e20
cmp dword [rsp + 0x14c0], eax
jge 0x140166a47
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
mov edx, dword [rsp + 0x14c0]
call fcn.140016ec0
mov rbx, rax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x530
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
cdqe
cmp rbx, rax
je 0x140166a25
jmp 0x1401669b4
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x538
mov edx, dword [rsp + 0x14c0]
call fcn.140016910
jmp 0x140166a47
lea rcx, [rsp + 0xe40]
call fcn.14000e6a0
nop
lea rcx, [rsp + 0xa80]
call fcn.140007ac0
nop
lea rdx, [rsp + 0xa80]
lea rcx, [rsp + 0xe40]
call fcn.1401b7170
mov dword [rsp + 0x724], 0
mov dword [rsp + 0x730], 0
lea rdx, [0x140239c98]
lea rcx, [rsp + 0x1618]
call fcn.1400eeb90
mov qword [rsp + 0x17a8], rax
mov rcx, qword [rsp + 0x17a8]
call fcn.140023510
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2f0
mov rdx, rax
call fcn.140016df0
mov dword [rsp + 0xe30], eax
lea rcx, [rsp + 0x1618]
call fcn.140001490
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2f0
xor r8d, r8d
mov edx, dword [rsp + 0xe30]
call fcn.140016e50
lea rdx, [0x140239ca8]
lea rcx, [rsp + 0x1620]
call fcn.1400eeb90
mov qword [rsp + 0x17b0], rax
mov rcx, qword [rsp + 0x17b0]
call fcn.140023510
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x398
mov rdx, rax
call fcn.140016df0
mov dword [rsp + 0xe30], eax
lea rcx, [rsp + 0x1620]
call fcn.140001490
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x398
xor r8d, r8d
mov edx, dword [rsp + 0xe30]
call fcn.140016e50
mov dword [rsp + 0x14c4], 0
jmp 0x140166b90
mov eax, dword [rsp + 0x14c4]
add eax, 1
mov dword [rsp + 0x14c4], eax
mov ebx, dword [rsp + 0x14c4]
lea rcx, [rsp + 0xa80]
call fcn.140007b40
cmp rbx, rax
jae 0x140166d94
mov edx, dword [rsp + 0x14c4]
lea rcx, [rsp + 0xa80]
call fcn.140007b70
mov rbx, rax
lea rcx, [rsp + 0xce8]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
cmp dword [rbx + 0x198], eax
je 0x140166c9e
mov edx, dword [rsp + 0x14c4]
lea rcx, [rsp + 0xa80]
call fcn.140007b70
mov rcx, rax
add rcx, 0x1a0
call fcn.140023510
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2f0
mov rdx, rax
call fcn.140016df0
mov dword [rsp + 0xe30], eax
mov edx, dword [rsp + 0x14c4]
lea rcx, [rsp + 0xa80]
call fcn.140007b70
mov r8d, dword [rax + 0x198]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2f0
mov edx, dword [rsp + 0xe30]
call fcn.140016e50
mov edx, dword [rsp + 0x14c4]
lea rcx, [rsp + 0xa80]
call fcn.140007b70
mov rbx, rax
lea rcx, [rsp + 0xce0]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
cmp dword [rbx + 0x198], eax
jne 0x140166c9e
mov eax, dword [rsp + 0xe30]
mov dword [rsp + 0x724], eax
mov edx, dword [rsp + 0x14c4]
lea rcx, [rsp + 0xa80]
call fcn.140007b70
mov rbx, rax
lea rcx, [rsp + 0xce0]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
cmp dword [rbx + 0x198], eax
je 0x140166d8f
mov edx, dword [rsp + 0x14c4]
lea rcx, [rsp + 0xa80]
call fcn.140007b70
mov rcx, rax
add rcx, 0x1a0
call fcn.140023510
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x398
mov rdx, rax
call fcn.140016df0
mov dword [rsp + 0xe30], eax
mov edx, dword [rsp + 0x14c4]
lea rcx, [rsp + 0xa80]
call fcn.140007b70
mov r8d, dword [rax + 0x198]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x398
mov edx, dword [rsp + 0xe30]
call fcn.140016e50
mov edx, dword [rsp + 0x14c4]
lea rcx, [rsp + 0xa80]
call fcn.140007b70
mov rbx, rax
lea rcx, [rsp + 0xce8]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
cmp dword [rbx + 0x198], eax
jne 0x140166d8f
mov eax, dword [rsp + 0xe30]
mov dword [rsp + 0x730], eax
jmp 0x140166b7f
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2f0
mov edx, dword [rsp + 0x724]
call fcn.140016910
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x398
mov edx, dword [rsp + 0x730]
call fcn.140016910
lea rcx, [rsp + 0x740]
call fcn.140016d70
nop
lea rcx, [rsp + 0x68]
call fcn.140007ac0
nop
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x740]
call fcn.1401b7170
lea rcx, [rsp + 0x728]
call fcn.140002db0
nop
mov edx, ILCreateFromPathW
lea rcx, [rsp + 0x1628]
call fcn.1400efb10
mov qword [rsp + 0x17b8], rax
mov rax, qword [rsp + 0x17b8]
mov qword [rsp + 0x17c0], rax
mov rdx, qword [rsp + 0x17c0]
lea rcx, [rsp + 0x728]
call fcn.140002d80
nop
lea rcx, [rsp + 0x1628]
call fcn.140001490
lea rcx, [rsp + 0x728]
call fcn.140023510
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x5e8
mov rdx, rax
call fcn.140016df0
mov dword [rsp + 0xe34], 0
mov dword [rsp + 0x14c8], 0
jmp 0x140166e9d
mov eax, dword [rsp + 0x14c8]
add eax, 1
mov dword [rsp + 0x14c8], eax
movsxd rbx, dword [rsp + 0x14c8]
lea rcx, [rsp + 0x68]
call fcn.140007b40
cmp rbx, rax
jae 0x140166f3b
movsxd rdx, dword [rsp + 0x14c8]
lea rcx, [rsp + 0x68]
call fcn.140007b70
mov rcx, rax
add rcx, 0x1a0
call fcn.140023510
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x5e8
mov rdx, rax
call fcn.140016df0
movsxd rdx, dword [rsp + 0x14c8]
lea rcx, [rsp + 0x68]
call fcn.140007b70
mov rcx, rax
add rcx, 0x1a0
call fcn.140023510
lea rcx, [rsp + 0xd18]
mov rdx, rax
call fcn.1400060b0
test eax, eax
jne 0x140166f36
mov eax, dword [rsp + 0x14c8]
add eax, 1
mov dword [rsp + 0xe34], eax
jmp 0x140166e8c
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x5e8
mov edx, dword [rsp + 0xe34]
call fcn.140016910
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2f0
mov edx, dword [rsp + 0x724]
call fcn.140016ec0
mov edx, eax
lea rcx, [rsp + 0xa0]
call fcn.14000e5e0
nop
lea rcx, [rsp + 0x30]
call fcn.140007ac0
nop
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa0]
call fcn.1401b7170
lea rcx, [rsp + 0x30]
call fcn.140007b40
test rax, rax
je 0x14016709d
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x5e8
call fcn.140016d40
mov dword [rsp + 0x724], 0
mov dword [rsp + 0x14cc], 0
jmp 0x140166fee
mov eax, dword [rsp + 0x14cc]
add eax, 1
mov dword [rsp + 0x14cc], eax
mov ebx, dword [rsp + 0x14cc]
lea rcx, [rsp + 0x30]
call fcn.140007b40
cmp rbx, rax
jae 0x140167082
mov edx, dword [rsp + 0x14cc]
lea rcx, [rsp + 0x30]
call fcn.140007b70
mov rcx, rax
add rcx, 0x1a0
call fcn.140023510
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x5e8
mov rdx, rax
call fcn.140016df0
mov edx, dword [rsp + 0x14cc]
lea rcx, [rsp + 0x30]
call fcn.140007b70
mov rcx, rax
add rcx, 0x1a0
call fcn.140023510
lea rcx, [rsp + 0xd98]
mov rdx, rax
call fcn.140006030
test eax, eax
jne 0x14016707d
mov eax, dword [rsp + 0x14cc]
mov dword [rsp + 0x724], eax
jmp 0x140166fdd
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x5e8
mov edx, dword [rsp + 0x724]
call fcn.140016910
xor edx, edx
mov rcx, qword [rsp + 0x18a0]
call fcn.14007bfac
mov rdx, qword [rsp + 0x18a0]
add rdx, 0x528
lea r8, [0x140239cc8]
lea rcx, [rsp + 0x1630]
call fcn.1400010b0
mov qword [rsp + 0x17c8], rax
mov rax, qword [rsp + 0x17c8]
mov qword [rsp + 0x17d0], rax
mov eax, dword [rsp + 0x171c]
or eax, 1
mov dword [rsp + 0x171c], eax
mov r8, qword [rsp + 0x18a0]
add r8, 0x2c8
mov rdx, qword [rsp + 0x17d0]
lea rcx, [rsp + 0x1638]
call fcn.140006bd0
mov qword [rsp + 0x17d8], rax
mov rax, qword [rsp + 0x17d8]
mov qword [rsp + 0x17e0], rax
mov eax, dword [rsp + 0x171c]
or eax, 2
mov dword [rsp + 0x171c], eax
lea r8, [0x140239cb8]
mov rdx, qword [rsp + 0x17e0]
lea rcx, [rsp + 0x1640]
call fcn.1400010b0
mov qword [rsp + 0x17e8], rax
mov rax, qword [rsp + 0x17e8]
mov qword [rsp + 0x17f0], rax
mov eax, dword [rsp + 0x171c]
or eax, 4
mov dword [rsp + 0x171c], eax
mov rcx, qword [rsp + 0x17f0]
call fcn.140023510
mov rcx, rax
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14016729d
mov rdx, qword [rsp + 0x18a0]
add rdx, 0x528
lea r8, str.Personal.
lea rcx, [rsp + 0x1648]
call fcn.1400010b0
mov qword [rsp + 0x17f8], rax
mov rax, qword [rsp + 0x17f8]
mov qword [rsp + 0x1800], rax
mov eax, dword [rsp + 0x171c]
or eax, 8
mov dword [rsp + 0x171c], eax
mov r8, qword [rsp + 0x18a0]
add r8, 0x218
mov rdx, qword [rsp + 0x1800]
lea rcx, [rsp + 0x1650]
call fcn.140006bd0
mov qword [rsp + 0x1808], rax
mov rax, qword [rsp + 0x1808]
mov qword [rsp + 0x1810], rax
mov eax, dword [rsp + 0x171c]
or eax, 0x10
mov dword [rsp + 0x171c], eax
lea r8, str..vhd
mov rdx, qword [rsp + 0x1810]
lea rcx, [rsp + 0x1658]
call fcn.1400010b0
mov qword [rsp + 0x1818], rax
mov eax, dword [rsp + 0x171c]
or eax, 0x20
mov dword [rsp + 0x171c], eax
mov rcx, qword [rsp + 0x1818]
call fcn.140023510
mov rcx, rax
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14016729d
mov dword [rsp + 0x1820], 0
jmp 0x1401672a8
mov dword [rsp + 0x1820], 1
mov rcx, qword [rsp + 0x18a0]
mov eax, dword [rsp + 0x1820]
mov dword [rcx + 0x5e4], eax
mov eax, dword [rsp + 0x171c]
and eax, 0x20
test eax, eax
je 0x1401672e1
and dword [rsp + 0x171c], 0xffffffdf
lea rcx, [rsp + 0x1658]
call fcn.140001490
nop
mov eax, dword [rsp + 0x171c]
and eax, 0x10
test eax, eax
je 0x140167305
and dword [rsp + 0x171c], 0xffffffef
lea rcx, [rsp + 0x1650]
call fcn.140001490
nop
mov eax, dword [rsp + 0x171c]
and eax, 8
test eax, eax
je 0x140167329
and dword [rsp + 0x171c], 0xfffffff7
lea rcx, [rsp + 0x1648]
call fcn.140001490
nop
mov eax, dword [rsp + 0x171c]
and eax, 4
test eax, eax
je 0x14016734d
and dword [rsp + 0x171c], 0xfffffffb
lea rcx, [rsp + 0x1640]
call fcn.140001490
nop
mov eax, dword [rsp + 0x171c]
and eax, 2
test eax, eax
je 0x140167371
and dword [rsp + 0x171c], 0xfffffffd
lea rcx, [rsp + 0x1638]
call fcn.140001490
nop
mov eax, dword [rsp + 0x171c]
and eax, 1
test eax, eax
je 0x140167394
and dword [rsp + 0x171c], 0xfffffffe
lea rcx, [rsp + 0x1630]
call fcn.140001490
mov rcx, qword [rsp + 0x18a0]
call fcn.1401643a0
lea rcx, [rsp + 0x3e0]
call fcn.1401cc310
nop
lea rcx, [rsp + 0xab0]
call fcn.140007ac0
nop
lea rdx, [rsp + 0xab0]
lea rcx, [rsp + 0x3e0]
call fcn.1401b7170
lea rcx, [rsp + 0xae0]
call fcn.140002db0
nop
mov edx, 0xa1
lea rcx, [rsp + 0x1660]
call fcn.1400efb10
mov qword [rsp + 0x1828], rax
mov rax, qword [rsp + 0x1828]
mov qword [rsp + 0x1830], rax
mov rdx, qword [rsp + 0x1830]
lea rcx, [rsp + 0xae0]
call fcn.140002d80
nop
lea rcx, [rsp + 0x1660]
call fcn.140001490
lea rcx, [rsp + 0xae0]
call fcn.140023510
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
mov rdx, rax
call fcn.140016df0
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
xor r8d, r8d
xor edx, edx
call fcn.140016e50
mov dword [rsp + 0x14d0], 0
jmp 0x140167488
mov eax, dword [rsp + 0x14d0]
add eax, 1
mov dword [rsp + 0x14d0], eax
movsxd rbx, dword [rsp + 0x14d0]
lea rcx, [rsp + 0xab0]
call fcn.140007b40
cmp rbx, rax
jae 0x140167520
movsxd rdx, dword [rsp + 0x14d0]
lea rcx, [rsp + 0xab0]
call fcn.140007b70
mov rcx, rax
add rcx, 0x1a0
call fcn.140023510
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
mov rdx, rax
call fcn.140016df0
mov dword [rsp + 0x14d4], eax
movsxd rdx, dword [rsp + 0x14d0]
lea rcx, [rsp + 0xab0]
call fcn.140007b70
mov r8d, dword [rax + 0x198]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
mov edx, dword [rsp + 0x14d4]
call fcn.140016e50
jmp 0x140167477
mov dword [rsp + 0x14d8], 0
jmp 0x14016753e
mov eax, dword [rsp + 0x14d8]
add eax, 1
mov dword [rsp + 0x14d8], eax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
call fcn.140016e20
cmp dword [rsp + 0x14d8], eax
jge 0x1401675b5
lea rcx, [rsp + 0xcd8]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
movsxd rbx, eax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
mov edx, dword [rsp + 0x14d8]
call fcn.140016ec0
cmp rbx, rax
jne 0x1401675b0
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
mov edx, dword [rsp + 0x14d8]
call fcn.140016910
jmp 0x1401675b5
jmp 0x14016752d
mov rax, qword [rsp + 0x18a0]
cmp dword [rax + 0x718], 0
je 0x140167652
mov dword [rsp + 0x14dc], 0
jmp 0x1401675e8
mov eax, dword [rsp + 0x14dc]
add eax, 1
mov dword [rsp + 0x14dc], eax
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
call fcn.140016e20
cmp dword [rsp + 0x14dc], eax
jge 0x140167652
mov rax, qword [rsp + 0x18a0]
mov ebx, dword [rax + 0x718]
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
mov edx, dword [rsp + 0x14dc]
call fcn.140016ec0
cmp rbx, rax
jne 0x140167650
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
mov edx, dword [rsp + 0x14dc]
call fcn.140016910
jmp 0x140167652
jmp 0x1401675d7
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
call fcn.1400167c0
cmp eax, 0xffffffff
jne 0x140167681
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
xor edx, edx
call fcn.140016910
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
call fcn.1400167c0
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x220
mov edx, eax
call fcn.140016ec0
mov r11, rax
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x718], r11d
mov rax, qword [rsp + 0x18a0]
cmp dword [rax + 0x690], 0
je 0x1401676f5
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x6e8
call fcn.140014cc0
cmp rax, 1
jle 0x1401676f5
mov dword [rsp + 0x1838], 1
jmp 0x140167700
mov dword [rsp + 0x1838], 0
mov eax, dword [rsp + 0x1838]
mov dword [rsp + 0x720], eax
cmp dword [rsp + 0x720], 0
je 0x140167817
mov edx, 0x545
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, 1
mov rcx, rax
call fcn.140016d10
mov edx, 0x543
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, 1
mov rcx, rax
call fcn.140016d10
mov edx, 0x544
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, 1
mov rcx, rax
call fcn.140016d10
mov edx, 0x548
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, 1
mov rcx, rax
call fcn.140016d10
mov edx, 0x533
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
xor edx, edx
mov rcx, rax
call fcn.1400784d8
mov edx, 0x54b
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
xor edx, edx
mov rcx, rax
call fcn.1400784d8
mov edx, 0x4da
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
xor edx, edx
mov rcx, rax
call fcn.1400784d8
mov edx, 0x401
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
xor edx, edx
mov rcx, rax
call fcn.1400784d8
mov rcx, qword [rsp + 0x18a0]
call fcn.140164520
jmp 0x140167824
mov rcx, qword [rsp + 0x18a0]
call fcn.140164300
cmp dword [rsp + 0x720], 0
je 0x14016783b
mov dword [rsp + 0x183c], 5
jmp 0x140167846
mov dword [rsp + 0x183c], 0
mov edx, 0x538
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x183c]
mov rcx, rax
call fcn.140078478
cmp dword [rsp + 0x720], 0
je 0x14016787e
mov dword [rsp + 0x1840], 5
jmp 0x140167889
mov dword [rsp + 0x1840], 0
mov edx, 0x541
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x1840]
mov rcx, rax
call fcn.140078478
cmp dword [rsp + 0x720], 0
je 0x1401678c1
mov dword [rsp + 0x1844], 5
jmp 0x1401678cc
mov dword [rsp + 0x1844], 0
mov edx, 0x539
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x1844]
mov rcx, rax
call fcn.140078478
cmp dword [rsp + 0x720], 0
je 0x140167904
mov dword [rsp + 0x1848], 5
jmp 0x14016790f
mov dword [rsp + 0x1848], 0
mov edx, 0x53a
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x1848]
mov rcx, rax
call fcn.140078478
cmp dword [rsp + 0x720], 0
je 0x140167947
mov dword [rsp + 0x184c], 5
jmp 0x140167952
mov dword [rsp + 0x184c], 0
mov edx, 0x53b
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x184c]
mov rcx, rax
call fcn.140078478
cmp dword [rsp + 0x720], 0
je 0x14016798a
mov dword [rsp + 0x1850], 5
jmp 0x140167995
mov dword [rsp + 0x1850], 0
mov edx, 0x53c
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x1850]
mov rcx, rax
call fcn.140078478
cmp dword [rsp + 0x720], 0
je 0x1401679cd
mov dword [rsp + 0x1854], 5
jmp 0x1401679d8
mov dword [rsp + 0x1854], 0
mov edx, 0x53d
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x1854]
mov rcx, rax
call fcn.140078478
cmp dword [rsp + 0x720], 0
je 0x140167a10
mov dword [rsp + 0x1858], 5
jmp 0x140167a1b
mov dword [rsp + 0x1858], 0
mov edx, 0x53e
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x1858]
mov rcx, rax
call fcn.140078478
cmp dword [rsp + 0x720], 0
je 0x140167a53
mov dword [rsp + 0x185c], 5
jmp 0x140167a5e
mov dword [rsp + 0x185c], 0
mov edx, 0x53f
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x185c]
mov rcx, rax
call fcn.140078478
cmp dword [rsp + 0x720], 0
je 0x140167a96
mov dword [rsp + 0x1860], 5
jmp 0x140167aa1
mov dword [rsp + 0x1860], 0
mov edx, 0x540
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x1860]
mov rcx, rax
call fcn.140078478
cmp dword [rsp + 0x720], 0
je 0x140167ad9
mov dword [rsp + 0x1864], 5
jmp 0x140167ae4
mov dword [rsp + 0x1864], 0
mov edx, 0x549
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov edx, dword [rsp + 0x1864]
mov rcx, rax
call fcn.140078478
mov rax, qword [rsp + 0x18a0]
cmp dword [rax + 0x690], 0
jne 0x140167bc4
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x218
call fcn.1400019b0
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2d0
call fcn.1400019b0
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x2c8
call fcn.1400019b0
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x710
call fcn.1400019b0
mov rcx, qword [rsp + 0x18a0]
add rcx, 0x6a8
call fcn.14000e330
mov r11, qword [rsp + 0x18a0]
mov dword [r11 + 0x74c], 0
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x698], 0
mov rax, qword [rsp + 0x18a0]
mov dword [rax + 0x69c], 0
xor edx, edx
mov rcx, qword [rsp + 0x18a0]
call fcn.14007bfac
cmp dword [rsp + 0x720], 0
jne 0x140167fa4
mov rax, qword [rsp + 0x18a0]
cmp dword [rax + 0x690], 0
je 0x140167fa4
lea rcx, [rsp + 0x14f0]
call fcn.1400e7d10
nop
lea rcx, [rsp + 0x1668]
call fcn.140001000
mov qword [rsp + 0x1868], rax
mov rax, qword [rsp + 0x1868]
mov qword [rsp + 0x1870], rax
lea r8, [0x140239d08]
mov rdx, qword [rsp + 0x1870]
lea rcx, [rsp + 0x1670]
call fcn.1400010b0
mov qword [rsp + 0x1878], rax
mov rax, qword [rsp + 0x1878]
mov qword [rsp + 0x1880], rax
mov rcx, qword [rsp + 0x1880]
call fcn.140023510
mov dword [rsp + 0x20], 0
mov r9d, reloc.WS2_32.dll_WSACleanup
mov r8, rax
lea rdx, [rsp + 0x1678]
lea rcx, [rsp + 0x14f0]
call fcn.1400eb0e0
nop
lea rcx, [rsp + 0x1670]
call fcn.140001490
nop
lea rcx, [rsp + 0x1668]
call fcn.140001490
lea rcx, [rsp + 0x14e0]
call fcn.140002db0
nop
mov r8, qword [rsp + 0xcb8]
lea rdx, [0x140239d20]
lea rcx, [rsp + 0x14e0]
call fcn.140002c40
lea rcx, [rsp + 0x14e0]
call fcn.140023510
xor r9d, r9d
mov r8, rax
lea rdx, [rsp + 0x15c0]
lea rcx, [rsp + 0x14f0]
call fcn.1400eb970
lea rcx, [rsp + 0x1690]
call fcn.1400e5f10
mov rdx, rax
lea rcx, [rsp + 0x15c0]
call fcn.1400e5df0
movzx eax, al
test eax, eax
je 0x140167f89
lea rdx, [rsp + 0x16a0]
lea rcx, [rsp + 0x15c0]
call fcn.1400e73e0
lea r8, [0x140239d90]
lea rdx, [rsp + 0x15d0]
mov rcx, rax
call fcn.1400e68f0
lea rcx, [rsp + 0x16a8]
call fcn.1400e5130
mov rdx, rax
lea rcx, [rsp + 0x15d0]
call fcn.1400e5030
movzx eax, al
test eax, eax
je 0x140167dab
lea r8, [0x140239d98]
lea rdx, [rsp + 0x16b0]
lea rcx, [rsp + 0x15d0]
call fcn.1400e6840
mov rcx, rax
call fcn.1400e5170
mov rbx, rax
mov edx, 0x553
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov rdx, rbx
mov rcx, rax
call fcn.140078390
lea rdx, [rsp + 0x16b8]
lea rcx, [rsp + 0x15c0]
call fcn.1400e73e0
lea r8, [0x140239da8]
lea rdx, [rsp + 0x16c0]
mov rcx, rax
call fcn.1400e68f0
mov rax, qword [rax]
mov qword [rsp + 0x15d0], rax
lea rcx, [rsp + 0x16c8]
call fcn.1400e5130
mov rdx, rax
lea rcx, [rsp + 0x15d0]
call fcn.1400e5030
movzx eax, al
test eax, eax
je 0x140167e4a
lea r8, [0x140239db0]
lea rdx, [rsp + 0x16d0]
lea rcx, [rsp + 0x15d0]
call fcn.1400e6840
mov rcx, rax
call fcn.1400e5170
mov rbx, rax
mov edx, 0x556
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov rdx, rbx
mov rcx, rax
call fcn.140078390
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x15c0]
call fcn.1400e73e0
lea r8, [0x140239dc0]
lea rdx, [rsp + 0x16e0]
mov rcx, rax
call fcn.1400e68f0
mov rax, qword [rax]
mov qword [rsp + 0x15d0], rax
lea rcx, [rsp + 0x16e8]
call fcn.1400e5130
mov rdx, rax
lea rcx, [rsp + 0x15d0]
call fcn.1400e5030
movzx eax, al
test eax, eax
je 0x140167ee9
lea r8, [0x140239dc8]
lea rdx, [rsp + 0x16f0]
lea rcx, [rsp + 0x15d0]
call fcn.1400e6840
mov rcx, rax
call fcn.1400e5170
mov rbx, rax
mov edx, 0x558
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov rdx, rbx
mov rcx, rax
call fcn.140078390
lea rdx, [rsp + 0x16f8]
lea rcx, [rsp + 0x15c0]
call fcn.1400e73e0
lea r8, [0x140239dd4]
lea rdx, [rsp + 0x1700]
mov rcx, rax
call fcn.1400e68f0
mov rax, qword [rax]
mov qword [rsp + 0x15d0], rax
lea rcx, [rsp + 0x1708]
call fcn.1400e5130
mov rdx, rax
lea rcx, [rsp + 0x15d0]
call fcn.1400e5030
movzx eax, al
test eax, eax
je 0x140167f89
lea r8, [0x140239de0]
lea rdx, [rsp + 0x1710]
lea rcx, [rsp + 0x15d0]
call fcn.1400e6840
mov rcx, rax
call fcn.1400e5170
mov rbx, rax
mov edx, 0x559
mov rcx, qword [rsp + 0x18a0]
call fcn.1400781e4
mov rdx, rbx
mov rcx, rax
call fcn.140078390
nop
lea rcx, [rsp + 0x14e0]
call fcn.140001490
nop
lea rcx, [rsp + 0x14f0]
call fcn.1400e65e0
mov dword [rsp + 0x1718], 1
lea rcx, [rsp + 0xae0]
call fcn.140001490
nop
lea rcx, [rsp + 0xab0]
call fcn.140007b10
nop
lea rcx, [rsp + 0x3e0]
call fcn.140005db0
nop
lea rcx, [rsp + 0x30]
call fcn.140007b10
nop
lea rcx, [rsp + 0xa0]
call fcn.140005db0
nop
lea rcx, [rsp + 0x728]
call fcn.140001490
nop
lea rcx, [rsp + 0x68]
call fcn.140007b10
nop
lea rcx, [rsp + 0x740]
call fcn.140005db0
nop
lea rcx, [rsp + 0xa80]
call fcn.140007b10
nop
lea rcx, [rsp + 0xe40]
call fcn.140005db0
nop
lea rcx, [rsp + 0x60]
call fcn.140001490
nop
lea rcx, [rsp + 0xaf0]
call fcn.140005db0
mov eax, dword [rsp + 0x1718]
mov rcx, qword [rsp + 0x1888]
xor rcx, rsp
call fcn.1400a8050
add rsp, 0x1890
pop rbx
ret