Function at 0x140017fb0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1a8
movdqa xmmword [rsp + 0x190], xmm6
mov edi, edx
mov rsi, rcx
mov rax, qword [0x140082030]
xor rax, rsp
mov qword [rsp + 0x188], rax
mov rbx, qword [rcx + 0x20]
mov r14, qword [rbx + 8]
mov rcx, qword [r14 + 8]
call fcn.140017c40
mov qword [r14 + 8], r14
mov qword [r14], r14
mov qword [r14 + 0x10], r14
mov qword [rbx + 0x10], 0
mov rbx, qword [rsi + 0x28]
test rbx, rbx
je 0x14001807d
mov r14, qword [rbx]
test r14, r14
je 0x140018075
mov r15, qword [rbx + 8]
cmp r14, r15
je 0x140018041
mov rax, qword [r14]
mov rax, qword [rax]
mov rcx, r14
xor edx, edx
call qword [0x1400b8010]
add r14, 0xb8
cmp r14, r15
jne 0x140018021
mov r14, qword [rbx]
mov rdx, qword [rbx + 0x10]
sub rdx, r14
cmp rdx, 0x1000
jb 0x14001806d
mov rax, qword [r14 - 8]
add r14, 0xfffffffffffffff8
sub r14, rax
cmp r14, 0x20
jae 0x140019071
add rdx, 0x27
mov r14, rax
mov rcx, r14
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
mov rcx, rbx
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64_
mov qword [rsi + 0x28], 0
mov dword [rsi + 0x30], 0
mov byte [rsi + 8], 0
cmp edi, 4
jb 0x140019041
mov rcx, qword [rsi + 0x10]
lea rdx, [rsp + 0x6c]
mov r8d, 4
call fcn.140014ce0
test al, al
je 0x140019041
mov rcx, qword [rsi + 0x10]
cmp byte [rcx + 0x62], 0
mov ebx, dword [rsp + 0x6c]
je 0x1400180cf
cmp byte [rcx + 0x60], 0
je 0x1400180cf
bswap ebx
mov dword [rsp + 0x6c], ebx
cmp ebx, 0x25ed097
ja 0x140019041
mov eax, edi
imul edx, ebx, 0x6c
lea r8, [rdx + 4]
cmp r8, rax
je 0x140018115
add rdx, 8
cmp rdx, rax
jne 0x140019041
lea rdx, [rsp + 0xb0]
mov r8d, 4
call fcn.140014ce0
test al, al
je 0x140019041
mov ebx, dword [rsp + 0x6c]
xor ebp, ebp
cmp ebx, 0x800
ja 0x140019043
test ebx, ebx
je 0x140018fc7
mov ecx, 0x18
call sub.mozglue.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
mov qword [rsp + 0x28], rax
mov r12, qword [rsi + 0x10]
mov byte [rsp + 0xb8], 0
mov qword [rsp + 0xc0], r12
lea r13, [0x140044960]
mov qword [rsp + 0xb0], r13
lea rbp, [0x140044970]
mov qword [rsp + 0xc8], rbp
mov word [rsp + 0xd0], 0
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xd8], xmm0
movdqu xmmword [rsp + 0xe8], xmm0
movdqu xmmword [rsp + 0xf8], xmm0
movdqu xmmword [rsp + 0x108], xmm0
movdqu xmmword [rsp + 0x118], xmm0
movdqu xmmword [rsp + 0x128], xmm0
movdqu xmmword [rsp + 0x138], xmm0
movdqu xmmword [rsp + 0x148], xmm0
mov dword [rsp + 0x158], 0xffffffff
mov qword [rsp + 0x160], 0
mov edi, ebx
imul r14, rdi, 0xb8
cmp ebx, 0x17
jb 0x1400181fe
lea rcx, [r14 + 0x27]
call sub.mozglue.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140018209
mov rcx, r14
call sub.mozglue.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
mov rbx, rax
lea r15, [rsp + 0xd0]
mov rax, qword [rsp + 0x28]
mov qword [rax], rbx
add r14, rbx
mov qword [rax + 0x10], r14
mov byte [rbx + 8], 0
mov qword [rbx + 0x10], r12
mov qword [rbx], r13
mov qword [rbx + 0x18], rbp
lea rcx, [rbx + 0x20]
mov r8d, 0x98
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
add rbx, 0xb8
dec rdi
jne 0x140018220
mov rdi, qword [rsp + 0x28]
mov qword [rdi + 8], rbx
lea rbx, [rsp + 0xb0]
mov rcx, rbx
call fcn.140016250
cmp dword [rsp + 0x6c], 0
je 0x140018fc1
mov r14, qword [rdi]
lea r12, [r14 + 0xb0]
xor r13d, r13d
pxor xmm6, xmm6
mov r15, qword [r12 - 0x18]
test r15, r15
je 0x1400182d2
mov rax, qword [r15 + 0x18]
cmp rax, 0x10
jb 0x1400182ca
mov rcx, qword [r15]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1400182c5
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140019071
add rax, 0x28
mov rdx, rax
mov rcx, r8
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
mov rcx, r15
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64_
mov qword [r12 - 0x18], 0
mov r15, qword [r12 - 0x10]
test r15, r15
je 0x140018326
mov rcx, qword [r15]
test rcx, rcx
je 0x14001831e
mov rdx, qword [r15 + 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x140018319
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140019071
add rdx, 0x27
mov rcx, rax
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
mov rcx, r15
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64_
mov qword [r12 - 0x10], 0
mov dword [r12 - 8], 0xffffffff
mov r15, qword [r12]
test r15, r15
je 0x140018382
mov rcx, qword [r15]
test rcx, rcx
je 0x14001837a
mov rdx, qword [r15 + 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x140018375
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140019071
add rdx, 0x27
mov rcx, rax
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
mov rcx, r15
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64_
mov qword [r12], 0
mov word [r12 - 0x90], 0
mov byte [r12 - 0xa8], 0
mov rcx, qword [r12 - 0xa0]
lea r15, [r12 - 0x88]
mov r8d, 0x6c
mov rdx, r15
call fcn.140014ce0
test al, al
je 0x140018fdb
mov rax, qword [r12 - 0xa0]
cmp byte [rax + 0x62], 0
je 0x140018513
cmp byte [rax + 0x60], 0
je 0x140018513
movdqu xmm2, xmmword [r12 - 0x88]
movdqu xmm3, xmmword [r12 - 0x78]
movdqu xmm4, xmmword [r12 - 0x68]
movdqu xmm1, xmmword [r12 - 0x58]
movdqa xmm0, xmm2
punpckhbw xmm0, xmm6
pshuflw xmm0, xmm0, 0x1b
pshufhw xmm5, xmm0, 0x1b
punpcklbw xmm2, xmm6
pshuflw xmm2, xmm2, 0x1b
pshufhw xmm2, xmm2, 0x1b
packuswb xmm2, xmm5
pshufd xmm2, xmm2, 0xe1
movdqu xmmword [r12 - 0x88], xmm2
movdqa xmm2, xmm3
punpckhbw xmm2, xmm6
pshuflw xmm2, xmm2, 0x1b
pshufhw xmm2, xmm2, 0x1b
punpcklbw xmm3, xmm6
pshuflw xmm3, xmm3, 0x1b
pshufhw xmm3, xmm3, 0x1b
packuswb xmm3, xmm2
movdqu xmmword [r12 - 0x78], xmm3
movdqa xmm2, xmm4
punpckhbw xmm2, xmm6
pshuflw xmm2, xmm2, 0x1b
pshufhw xmm2, xmm2, 0x1b
punpcklbw xmm4, xmm6
pshuflw xmm3, xmm4, 0x1b
pshufhw xmm3, xmm3, 0x1b
packuswb xmm3, xmm2
movdqu xmmword [r12 - 0x68], xmm3
movdqa xmm2, xmm1
punpckhbw xmm2, xmm6
pshuflw xmm2, xmm2, 0x1b
pshufhw xmm2, xmm2, 0x1b
punpcklbw xmm1, xmm6
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
packuswb xmm1, xmm2
movdqu xmmword [r12 - 0x58], xmm1
movdqu xmm1, xmmword [r12 - 0x48]
movdqa xmm2, xmm1
punpckhbw xmm2, xmm6
pshuflw xmm2, xmm2, 0x1b
pshufhw xmm2, xmm2, 0x1b
punpcklbw xmm1, xmm6
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
packuswb xmm1, xmm2
movdqu xmmword [r12 - 0x48], xmm1
mov eax, dword [r12 - 0x38]
bswap eax
mov dword [r12 - 0x38], eax
mov eax, dword [r12 - 0x34]
bswap eax
mov dword [r12 - 0x34], eax
mov eax, dword [r12 - 0x30]
bswap eax
mov dword [r12 - 0x30], eax
packuswb xmm0, xmm0
movd eax, xmm0
jmp 0x140018518
mov eax, dword [r12 - 0x80]
test eax, eax
je 0x140018fdb
mov eax, eax
add rax, qword [r15]
jb 0x140018fdb
mov byte [r12 - 0x90], 1
inc r13
mov eax, dword [rsp + 0x6c]
add r12, 0xb8
cmp r13, rax
jb 0x140018282
mov dword [rsp + 0x68], 0
test eax, eax
je 0x140018fc1
lea r14, [rsp + 0x168]
pxor xmm6, xmm6
xor eax, eax
mov qword [rsp + 0x40], rax
xor eax, eax
mov eax, eax
mov rbp, qword [rdi]
imul r15, rax, 0xb8
lea r12, [r15 + rbp]
cmp byte [rbp + r15 + 0x20], 0
je 0x140018a4d
mov rcx, qword [r12 + 0x10]
mov edx, dword [rbp + r15 + 0x3c]
call fcn.140017980
mov qword [rbp + r15 + 0x98], rax
test rax, rax
je 0x140018a4d
lea r13, [r15 + rbp]
add r13, 0x20
mov byte [r12 + 8], 1
cmp dword [r13 + 0x54], 0
je 0x1400185e3
cmp byte [r13], 0
je 0x140018a4d
mov rdx, qword [rbp + r15 + 0xa0]
test rdx, rdx
je 0x14001861d
cmp qword [rdx], 0
je 0x140018a4d
mov eax, dword [rbp + r15 + 0x7c]
test eax, eax
je 0x140018612
cmp byte [r13], 0
je 0x140018a4d
mov rcx, qword [rbp + r15 + 0xb0]
test rcx, rcx
je 0x1400186a3
cmp qword [rcx], 0
je 0x140018a4d
mov byte [rbp + r15 + 0x21], 1
jmp 0x140018a59
mov rcx, qword [r12 + 0x10]
mov edx, dword [rbp + r15 + 0x78]
call fcn.140013280
test al, al
je 0x140018a4d
lea rax, [r15 + rbp]
add rax, 0x74
mov qword [rsp + 0x38], rax
mov eax, dword [rax]
cmp rax, 0x8000
ja 0x140018a4d
mov ecx, 0x18
mov qword [rsp + 0x48], rax
call sub.mozglue.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
movdqu xmmword [rax], xmm6
mov qword [rax + 0x10], 0
test rcx, rcx
je 0x14001872f
cmp ecx, 0x1000
jb 0x14001874d
add rcx, 0x27
call sub.mozglue.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
lea rcx, [rax + 0x27]
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x140018755
cmp eax, 0xc
jb 0x140018a4d
mov rcx, qword [r12 + 0x10]
mov edx, dword [rbp + r15 + 0x80]
call fcn.140013280
test al, al
je 0x140018a4d
lea rax, [r15 + rbp]
add rax, 0x7c
mov qword [rsp + 0x38], rax
mov eax, dword [rax]
cmp rax, 0x8000
ja 0x140018a4d
mov r13, rax
mov ecx, 0x18
call sub.mozglue.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
movdqu xmmword [rax], xmm6
mov qword [rsp + 0x30], rax
mov qword [rax + 0x10], 0
test r13, r13
je 0x14001887b
cmp r13d, 0x1000
jb 0x140018882
lea rcx, [r13 + 0x27]
call sub.mozglue.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
lea rcx, [rax + 0x27]
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x14001888d
mov rcx, qword [r12 + 0x10]
xor edx, edx
xor r8d, r8d
call fcn.140014ce0
mov r9d, 0
test al, al
jne 0x1400187a7
jmp 0x140018a43
call sub.mozglue.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
mov rcx, rax
mov rdi, qword [rsp + 0x30]
mov qword [rdi], rcx
mov r8, qword [rsp + 0x48]
lea rax, [rcx + r8]
mov qword [rsp + 0x50], rax
mov qword [rdi + 0x10], rax
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov rax, qword [rsp + 0x50]
mov qword [rdi + 8], rax
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax]
mov rdi, qword [rdi]
mov rcx, qword [r12 + 0x10]
mov rdx, rdi
call fcn.140014ce0
test al, al
je 0x14001886d
mov r9, rdi
mov rdi, qword [rsp + 0x28]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax]
mov ecx, 0xffffffff
cmp eax, 5
jb 0x140018fa7
mov rcx, qword [r12 + 0x10]
cmp byte [rcx + 0x62], 0
setne dl
cmp byte [rcx + 0x60], 0
mov ecx, dword [r9]
setne r8b
and r8b, dl
mov edx, ecx
bswap edx
cmovne ecx, edx
cmp ecx, 0x3031424e
je 0x140018998
cmp ecx, 0x4270454c
je 0x1400189a2
cmp ecx, 0x53445352
mov rdi, qword [rsp + 0x28]
lea r14, [rsp + 0x168]
jne 0x140018fa7
cmp eax, 0x19
jb 0x14001899d
test r8b, r8b
je 0x14001884e
mov dword [r9], edx
mov eax, dword [r9 + 4]
mov ecx, dword [r9 + 0x14]
bswap eax
mov dword [r9 + 4], eax
rol word [r9 + 8], 8
rol word [r9 + 0xa], 8
bswap ecx
mov dword [r9 + 0x14], ecx
mov rax, qword [rsp + 0x38]
mov eax, dword [rax]
mov rcx, qword [rsp + 0x30]
mov r9, qword [rcx]
dec eax
mov rdi, r9
cmp byte [r9 + rax], 0
jne 0x1400189fd
mov ecx, 0x53445352
mov rdi, qword [rsp + 0x28]
jmp 0x140018fa7
test rdi, rdi
jne 0x1400189fd
jmp 0x140018a36
xor r8d, r8d
xor edi, edi
jmp 0x1400188b6
mov rcx, r13
call sub.mozglue.dll_void____ptr64___cdecl_operator_new_unsigned_long_long_unsigned___int64__
mov rcx, rax
mov r14, qword [rsp + 0x30]
mov qword [r14], rcx
lea rdi, [rcx + r13]
mov qword [r14 + 0x10], rdi
xor edx, edx
mov r8, r13
call sub.VCRUNTIME140.dll_memset
mov qword [r14 + 8], rdi
mov rdi, qword [r14]
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax]
mov rcx, qword [r12 + 0x10]
mov rdx, rdi
call fcn.140014ce0
test al, al
je 0x140018956
mov rax, qword [r12 + 0x10]
cmp byte [rax + 0x62], 0
je 0x14001891e
cmp byte [rax + 0x60], 0
je 0x14001891e
mov ecx, dword [rdi]
mov eax, dword [rdi + 4]
bswap ecx
mov dword [rdi], ecx
bswap eax
mov dword [rdi + 4], eax
cmp byte [rdi + 8], 0
je 0x140018921
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx]
add rcx, 0xfffffffffffffff4
cmp rcx, 2
jb 0x140018921
shr rcx, 1
cmp rcx, 1
adc rcx, 0
xor edx, edx
rol word [rdi + rdx*2 + 0xc], 8
inc rdx
cmp rcx, rdx
jne 0x14001890e
jmp 0x140018921
mov eax, dword [rdi + 4]
mov rcx, qword [rsp + 0x38]
cmp dword [rcx], eax
jne 0x14001894e
lea rax, [r15 + rbp]
add rax, 0xb0
mov rcx, qword [rsp + 0x30]
mov qword [rax], rcx
mov rdi, qword [rsp + 0x28]
lea r14, [rsp + 0x168]
jmp 0x140018608
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax]
test rdi, rdi
je 0x140018a36
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x10]
sub rdx, rdi
cmp rdx, 0x1000
jb 0x140018990
mov rax, qword [rdi - 8]
add rdi, 0xfffffffffffffff8
sub rdi, rax
cmp rdi, 0x20
jae 0x140019071
add rdx, 0x27
mov rdi, rax
mov rcx, rdi
jmp 0x140018a31
cmp eax, 0x11
jae 0x1400189b8
mov rdi, r9
jmp 0x1400189fd
mov ecx, 0x4270454c
test r8b, r8b
je 0x140018f9a
mov dword [r9], edx
jmp 0x140018f9a
test r8b, r8b
je 0x1400189ed
mov dword [r9], edx
mov eax, dword [r9 + 4]
mov ecx, dword [r9 + 8]
bswap eax
mov dword [r9 + 4], eax
bswap ecx
mov dword [r9 + 8], ecx
mov eax, dword [r9 + 0xc]
bswap eax
mov dword [r9 + 0xc], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax]
mov rcx, qword [rsp + 0x30]
mov r9, qword [rcx]
dec eax
mov rdi, r9
cmp byte [r9 + rax], 0
je 0x140018f95
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x10]
mov rcx, rdi
sub rdx, rdi
cmp rdx, 0x1000
jb 0x140018a31
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140019071
add rdx, 0x27
mov rcx, rax
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
mov rdi, qword [rsp + 0x28]
lea r14, [rsp + 0x168]
mov rcx, qword [rsp + 0x30]
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64_
cmp byte [r12 + 8], 0
je 0x140018fd3
lea rbp, [r12 + 0x18]
mov rax, qword [r12 + 0x18]
mov rax, qword [rax + 8]
mov rcx, rbp
call qword [0x1400b8010]
mov qword [rsp + 0x60], rax
mov rax, qword [r12 + 0x18]
mov rax, qword [rax + 0x10]
mov rcx, rbp
call qword [0x1400b8010]
mov r13, rax
mov rax, qword [rsp + 0x60]
cmp rax, 0xffffffffffffffff
je 0x140018fd3
mov rcx, qword [rsi + 0x20]
mov rdx, qword [rcx + 8]
mov r8, qword [rdx + 8]
cmp byte [r8 + 0x19], 0
je 0x140018ca1
mov rcx, qword [rsi + 0x10]
mov rdx, rbx
call fcn.140017a90
cmp dword [rsp + 0xb0], 0x8203
sete r12b
and r12b, al
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x90], rcx
mov r15, qword [rsi + 0x20]
mov rax, qword [rbp]
mov rax, qword [rax + 0x10]
mov rcx, rbp
call qword [0x1400b8010]
mov qword [rsp + 0x168], rax
mov qword [rsp + 0xb0], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov rcx, r15
lea rdx, [rsp + 0x90]
mov r8, rbx
mov r9, r14
call fcn.140019080
test al, al
jne 0x140018c19
test r12b, r12b
je 0x140018c19
mov rax, qword [rbp]
mov rax, qword [rax + 0x18]
mov rcx, rbp
mov rdx, r14
call qword [0x1400b8010]
mov qword [rsp + 0xc8], 0xf
mov eax, 0xc
mov qword [rsp + 0xc0], rax
movabs rcx, 0x6873612f7665642f
mov qword [rsp + 0xb0], rcx
mov dword [rsp + 0xb8], 0x2f6d656d
mov byte [rsp + 0xbc], 0
mov r15, qword [rsp + 0x168]
mov r8, qword [rsp + 0x178]
mov rcx, r14
mov r14, qword [rsp + 0x180]
cmp r14, 0x10
cmovae rcx, r15
cmp r8, rax
cmovae r8, rax
setae dil
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
sete bpl
cmp r14, 0x10
jb 0x140018c05
lea rdx, [r14 + 1]
cmp rdx, 0x1000
jb 0x140018bfd
mov rax, qword [r15 - 8]
add r15, 0xfffffffffffffff8
sub r15, rax
cmp r15, 0x20
jae 0x140019071
add r14, 0x28
mov rdx, r14
mov r15, rax
mov rcx, r15
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
and bpl, dil
mov rdi, qword [rsp + 0x28]
lea r14, [rsp + 0x168]
je 0x140018c1d
jmp 0x140018c7c
test al, al
jne 0x140018c7c
test r12b, r12b
je 0x140018fd3
mov rax, qword [rsp + 0x60]
sub rax, qword [rsp + 0x40]
jae 0x140018fd3
add r13, rax
mov qword [rsp + 0x58], r13
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x60], rax
mov rcx, qword [rsi + 0x20]
mov qword [rsp + 0xb0], 0
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x60]
mov r8, rbx
lea r9, [rsp + 0x58]
call fcn.140019080
test al, al
je 0x140018fd3
add r13, qword [rsp + 0x60]
mov qword [rsp + 0x40], r13
mov eax, dword [rsp + 0x68]
inc eax
mov dword [rsp + 0x68], eax
mov ebp, dword [rsp + 0x6c]
cmp eax, ebp
jb 0x140018570
jmp 0x140018fc3
mov rcx, rdx
lea r9, [r8 + 0x10]
cmp qword [r8 + 0x20], rax
cmovae rcx, r8
cmovae r9, r8
mov r8, qword [r9]
cmp byte [r8 + 0x19], 0
je 0x140018ca4
cmp rcx, rdx
je 0x140018ab0
cmp rax, qword [rcx + 0x28]
jb 0x140018ab0
mov eax, dword [rcx + 0x38]
cmp eax, dword [rsp + 0x6c]
jae 0x140018ab0
mov rcx, qword [rdi]
imul rax, rax, 0xb8
lea r15, [rcx + rax]
add r15, 0x18
mov rax, qword [r15]
mov rax, qword [rax + 8]
mov rcx, r15
call qword [0x1400b8010]
mov r12, rax
mov rax, qword [rbp]
mov rax, qword [rax + 8]
mov rcx, rbp
call qword [0x1400b8010]
cmp r12, rax
jne 0x140018ab0
mov rax, qword [r15]
mov rax, qword [rax + 0x10]
mov rcx, r15
call qword [0x1400b8010]
mov r12, rax
mov rax, qword [rbp]
mov rax, qword [rax + 0x10]
mov rcx, rbp
call qword [0x1400b8010]
cmp r12, rax
jne 0x140018ab0
mov rax, qword [rbp]
mov rax, qword [rax + 0x18]
mov rcx, rbp
mov rdx, rbx
call qword [0x1400b8010]
mov rax, qword [r15]
mov rax, qword [rax + 0x18]
mov rcx, r15
mov rdx, r14
call qword [0x1400b8010]
mov r8, qword [rsp + 0xc0]
mov r12, qword [rsp + 0x180]
cmp qword [rsp + 0x178], r8
jne 0x140018dc3
cmp r12, 0x10
jb 0x140018d99
mov r14, qword [rsp + 0x168]
cmp qword [rsp + 0xc8], 0x10
mov rdx, rbx
jb 0x140018daf
mov rdx, qword [rsp + 0xb0]
mov rcx, r14
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140018dcb
xor r15d, r15d
jmp 0x140018ed9
xor r15d, r15d
jmp 0x140018ee6
mov rax, qword [rbp]
mov rax, qword [rax + 0x20]
mov rcx, rbp
lea rdx, [rsp + 0x90]
call qword [0x1400b8010]
mov rax, qword [r15]
mov rax, qword [rax + 0x20]
mov rcx, r15
lea rdx, [rsp + 0x70]
call qword [0x1400b8010]
mov r8, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0x88]
cmp qword [rsp + 0x80], r8
jne 0x140018e4b
lea rcx, [rsp + 0x70]
cmp rdi, 0x10
jb 0x140018e23
mov rcx, qword [rsp + 0x70]
cmp qword [rsp + 0xa8], 0x10
lea rdx, [rsp + 0x90]
jb 0x140018e3e
mov rdx, qword [rsp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
sete r15b
jmp 0x140018e4e
xor r15d, r15d
cmp rdi, 0x10
jb 0x140018e8a
mov rcx, qword [rsp + 0x70]
lea rdx, [rdi + 1]
cmp rdx, 0x1000
jb 0x140018e85
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140019071
add rdi, 0x28
mov rdx, rdi
mov rcx, rax
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
mov rax, qword [rsp + 0xa8]
cmp rax, 0x10
jb 0x140018ed1
mov rcx, qword [rsp + 0x90]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140018ecc
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140019071
add rax, 0x28
mov rdx, rax
mov rcx, r8
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
mov r12, qword [rsp + 0x180]
mov rdi, qword [rsp + 0x28]
lea r14, [rsp + 0x168]
cmp r12, 0x10
jb 0x140018f33
mov rcx, qword [rsp + 0x168]
lea rdx, [r12 + 1]
cmp rdx, 0x1000
jb 0x140018f21
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140019071
add r12, 0x28
mov rdx, r12
mov rcx, rax
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
mov rdi, qword [rsp + 0x28]
lea r14, [rsp + 0x168]
mov rax, qword [rsp + 0xc8]
cmp rax, 0x10
jb 0x140018f87
mov rcx, qword [rsp + 0xb0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140018f75
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140019071
add rax, 0x28
mov rdx, rax
mov rcx, r8
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
mov rdi, qword [rsp + 0x28]
lea r14, [rsp + 0x168]
test r15b, r15b
je 0x140018ab0
jmp 0x140018c86
mov ecx, 0x3031424e
mov rdi, qword [rsp + 0x28]
lea r14, [rsp + 0x168]
lea rax, [r15 + rbp]
add rax, 0xa0
mov rdx, qword [rsp + 0x30]
mov qword [rax], rdx
mov dword [rax + 8], ecx
jmp 0x1400185d9
xor ebp, ebp
mov qword [rsi + 0x28], rdi
mov dword [rsi + 0x30], ebp
mov byte [rsi + 8], 1
mov bpl, 1
jmp 0x140019043
mov r14, qword [rdi]
test r14, r14
je 0x140019039
mov rdi, qword [rdi + 8]
cmp r14, rdi
je 0x140019004
mov rsi, r14
mov rax, qword [rsi]
mov rax, qword [rax]
mov rcx, rsi
xor edx, edx
call qword [0x1400b8010]
add rsi, 0xb8
cmp rsi, rdi
jne 0x140018fe7
mov rdi, qword [rsp + 0x28]
mov rdx, qword [rdi + 0x10]
sub rdx, r14
cmp rdx, 0x1000
jb 0x140019031
mov rax, qword [r14 - 8]
add r14, 0xfffffffffffffff8
sub r14, rax
cmp r14, 0x20
jae 0x140019071
add rdx, 0x27
mov r14, rax
mov rcx, r14
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64__unsigned_long_long_unsigned___int64__
mov rcx, rdi
call sub.mozglue.dll_void___cdecl_operator_delete_void____ptr64_
xor ebp, ebp
mov rcx, qword [rsp + 0x188]
xor rcx, rsp
call fcn.140038de0
mov eax, ebp
movaps xmm6, xmmword [rsp + 0x190]
add rsp, 0x1a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3