Function at 0x140018140
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.140017dd0
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 0x14001820d
mov r14, qword [rbx]
test r14, r14
je 0x140018205
mov r15, qword [rbx + 8]
cmp r14, r15
je 0x1400181d1
mov rax, qword [r14]
mov rax, qword [rax]
mov rcx, r14
xor edx, edx
call qword [0x1400b8010]
add r14, 0xb8
cmp r14, r15
jne 0x1400181b1
mov r14, qword [rbx]
mov rdx, qword [rbx + 0x10]
sub rdx, r14
cmp rdx, 0x1000
jb 0x1400181fd
mov rax, qword [r14 - 8]
add r14, 0xfffffffffffffff8
sub r14, rax
cmp r14, 0x20
jae 0x140019201
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 0x1400191d1
mov rcx, qword [rsi + 0x10]
lea rdx, [rsp + 0x6c]
mov r8d, 4
call fcn.140014e70
test al, al
je 0x1400191d1
mov rcx, qword [rsi + 0x10]
cmp byte [rcx + 0x62], 0
mov ebx, dword [rsp + 0x6c]
je 0x14001825f
cmp byte [rcx + 0x60], 0
je 0x14001825f
bswap ebx
mov dword [rsp + 0x6c], ebx
cmp ebx, 0x25ed097
ja 0x1400191d1
mov eax, edi
imul edx, ebx, 0x6c
lea r8, [rdx + 4]
cmp r8, rax
je 0x1400182a5
add rdx, 8
cmp rdx, rax
jne 0x1400191d1
lea rdx, [rsp + 0xb0]
mov r8d, 4
call fcn.140014e70
test al, al
je 0x1400191d1
mov ebx, dword [rsp + 0x6c]
xor ebp, ebp
cmp ebx, 0x800
ja 0x1400191d3
test ebx, ebx
je 0x140019157
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 0x14001838e
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 0x140018399
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 0x1400183b0
mov rdi, qword [rsp + 0x28]
mov qword [rdi + 8], rbx
lea rbx, [rsp + 0xb0]
mov rcx, rbx
call fcn.1400163e0
cmp dword [rsp + 0x6c], 0
je 0x140019151
mov r14, qword [rdi]
lea r12, [r14 + 0xb0]
xor r13d, r13d
pxor xmm6, xmm6
mov r15, qword [r12 - 0x18]
test r15, r15
je 0x140018462
mov rax, qword [r15 + 0x18]
cmp rax, 0x10
jb 0x14001845a
mov rcx, qword [r15]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140018455
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140019201
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 0x1400184b6
mov rcx, qword [r15]
test rcx, rcx
je 0x1400184ae
mov rdx, qword [r15 + 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x1400184a9
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140019201
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 0x140018512
mov rcx, qword [r15]
test rcx, rcx
je 0x14001850a
mov rdx, qword [r15 + 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x140018505
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140019201
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.140014e70
test al, al
je 0x14001916b
mov rax, qword [r12 - 0xa0]
cmp byte [rax + 0x62], 0
je 0x1400186a3
cmp byte [rax + 0x60], 0
je 0x1400186a3
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 0x1400186a8
mov eax, dword [r12 - 0x80]
test eax, eax
je 0x14001916b
mov eax, eax
add rax, qword [r15]
jb 0x14001916b
mov byte [r12 - 0x90], 1
inc r13
mov eax, dword [rsp + 0x6c]
add r12, 0xb8
cmp r13, rax
jb 0x140018412
mov dword [rsp + 0x68], 0
test eax, eax
je 0x140019151
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 0x140018bdd
mov rcx, qword [r12 + 0x10]
mov edx, dword [rbp + r15 + 0x3c]
call fcn.140017b10
mov qword [rbp + r15 + 0x98], rax
test rax, rax
je 0x140018bdd
lea r13, [r15 + rbp]
add r13, 0x20
mov byte [r12 + 8], 1
cmp dword [r13 + 0x54], 0
je 0x140018773
cmp byte [r13], 0
je 0x140018bdd
mov rdx, qword [rbp + r15 + 0xa0]
test rdx, rdx
je 0x1400187ad
cmp qword [rdx], 0
je 0x140018bdd
mov eax, dword [rbp + r15 + 0x7c]
test eax, eax
je 0x1400187a2
cmp byte [r13], 0
je 0x140018bdd
mov rcx, qword [rbp + r15 + 0xb0]
test rcx, rcx
je 0x140018833
cmp qword [rcx], 0
je 0x140018bdd
mov byte [rbp + r15 + 0x21], 1
jmp 0x140018be9
mov rcx, qword [r12 + 0x10]
mov edx, dword [rbp + r15 + 0x78]
call fcn.140013410
test al, al
je 0x140018bdd
lea rax, [r15 + rbp]
add rax, 0x74
mov qword [rsp + 0x38], rax
mov eax, dword [rax]
cmp rax, 0x8000
ja 0x140018bdd
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 0x1400188bf
cmp ecx, 0x1000
jb 0x1400188dd
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 0x1400188e5
cmp eax, 0xc
jb 0x140018bdd
mov rcx, qword [r12 + 0x10]
mov edx, dword [rbp + r15 + 0x80]
call fcn.140013410
test al, al
je 0x140018bdd
lea rax, [r15 + rbp]
add rax, 0x7c
mov qword [rsp + 0x38], rax
mov eax, dword [rax]
cmp rax, 0x8000
ja 0x140018bdd
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 0x140018a0b
cmp r13d, 0x1000
jb 0x140018a12
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 0x140018a1d
mov rcx, qword [r12 + 0x10]
xor edx, edx
xor r8d, r8d
call fcn.140014e70
mov r9d, 0
test al, al
jne 0x140018937
jmp 0x140018bd3
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.140014e70
test al, al
je 0x1400189fd
mov r9, rdi
mov rdi, qword [rsp + 0x28]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax]
mov ecx, 0xffffffff
cmp eax, 5
jb 0x140019137
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 0x140018b28
cmp ecx, 0x4270454c
je 0x140018b32
cmp ecx, 0x53445352
mov rdi, qword [rsp + 0x28]
lea r14, [rsp + 0x168]
jne 0x140019137
cmp eax, 0x19
jb 0x140018b2d
test r8b, r8b
je 0x1400189de
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 0x140018b8d
mov ecx, 0x53445352
mov rdi, qword [rsp + 0x28]
jmp 0x140019137
test rdi, rdi
jne 0x140018b8d
jmp 0x140018bc6
xor r8d, r8d
xor edi, edi
jmp 0x140018a46
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.140014e70
test al, al
je 0x140018ae6
mov rax, qword [r12 + 0x10]
cmp byte [rax + 0x62], 0
je 0x140018aae
cmp byte [rax + 0x60], 0
je 0x140018aae
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 0x140018ab1
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx]
add rcx, 0xfffffffffffffff4
cmp rcx, 2
jb 0x140018ab1
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 0x140018a9e
jmp 0x140018ab1
mov eax, dword [rdi + 4]
mov rcx, qword [rsp + 0x38]
cmp dword [rcx], eax
jne 0x140018ade
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 0x140018798
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax]
test rdi, rdi
je 0x140018bc6
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x10]
sub rdx, rdi
cmp rdx, 0x1000
jb 0x140018b20
mov rax, qword [rdi - 8]
add rdi, 0xfffffffffffffff8
sub rdi, rax
cmp rdi, 0x20
jae 0x140019201
add rdx, 0x27
mov rdi, rax
mov rcx, rdi
jmp 0x140018bc1
cmp eax, 0x11
jae 0x140018b48
mov rdi, r9
jmp 0x140018b8d
mov ecx, 0x4270454c
test r8b, r8b
je 0x14001912a
mov dword [r9], edx
jmp 0x14001912a
test r8b, r8b
je 0x140018b7d
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 0x140019125
mov rax, qword [rsp + 0x30]
mov rdx, qword [rax + 0x10]
mov rcx, rdi
sub rdx, rdi
cmp rdx, 0x1000
jb 0x140018bc1
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140019201
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 0x140019163
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 0x140019163
mov rcx, qword [rsi + 0x20]
mov rdx, qword [rcx + 8]
mov r8, qword [rdx + 8]
cmp byte [r8 + 0x19], 0
je 0x140018e31
mov rcx, qword [rsi + 0x10]
mov rdx, rbx
call fcn.140017c20
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.140019210
test al, al
jne 0x140018da9
test r12b, r12b
je 0x140018da9
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 0x140018d95
lea rdx, [r14 + 1]
cmp rdx, 0x1000
jb 0x140018d8d
mov rax, qword [r15 - 8]
add r15, 0xfffffffffffffff8
sub r15, rax
cmp r15, 0x20
jae 0x140019201
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 0x140018dad
jmp 0x140018e0c
test al, al
jne 0x140018e0c
test r12b, r12b
je 0x140019163
mov rax, qword [rsp + 0x60]
sub rax, qword [rsp + 0x40]
jae 0x140019163
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.140019210
test al, al
je 0x140019163
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 0x140018700
jmp 0x140019153
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 0x140018e34
cmp rcx, rdx
je 0x140018c40
cmp rax, qword [rcx + 0x28]
jb 0x140018c40
mov eax, dword [rcx + 0x38]
cmp eax, dword [rsp + 0x6c]
jae 0x140018c40
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 0x140018c40
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 0x140018c40
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 0x140018f53
cmp r12, 0x10
jb 0x140018f29
mov r14, qword [rsp + 0x168]
cmp qword [rsp + 0xc8], 0x10
mov rdx, rbx
jb 0x140018f3f
mov rdx, qword [rsp + 0xb0]
mov rcx, r14
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140018f5b
xor r15d, r15d
jmp 0x140019069
xor r15d, r15d
jmp 0x140019076
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 0x140018fdb
lea rcx, [rsp + 0x70]
cmp rdi, 0x10
jb 0x140018fb3
mov rcx, qword [rsp + 0x70]
cmp qword [rsp + 0xa8], 0x10
lea rdx, [rsp + 0x90]
jb 0x140018fce
mov rdx, qword [rsp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
sete r15b
jmp 0x140018fde
xor r15d, r15d
cmp rdi, 0x10
jb 0x14001901a
mov rcx, qword [rsp + 0x70]
lea rdx, [rdi + 1]
cmp rdx, 0x1000
jb 0x140019015
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140019201
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 0x140019061
mov rcx, qword [rsp + 0x90]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14001905c
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140019201
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 0x1400190c3
mov rcx, qword [rsp + 0x168]
lea rdx, [r12 + 1]
cmp rdx, 0x1000
jb 0x1400190b1
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140019201
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 0x140019117
mov rcx, qword [rsp + 0xb0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140019105
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140019201
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 0x140018c40
jmp 0x140018e16
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 0x140018769
xor ebp, ebp
mov qword [rsi + 0x28], rdi
mov dword [rsi + 0x30], ebp
mov byte [rsi + 8], 1
mov bpl, 1
jmp 0x1400191d3
mov r14, qword [rdi]
test r14, r14
je 0x1400191c9
mov rdi, qword [rdi + 8]
cmp r14, rdi
je 0x140019194
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 0x140019177
mov rdi, qword [rsp + 0x28]
mov rdx, qword [rdi + 0x10]
sub rdx, r14
cmp rdx, 0x1000
jb 0x1400191c1
mov rax, qword [r14 - 8]
add r14, 0xfffffffffffffff8
sub r14, rax
cmp r14, 0x20
jae 0x140019201
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.140038e80
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