Function at 0x1400dec50
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x128
movaps xmmword [rsp + 0x110], xmm6
mov r13, rdx
mov rax, qword [0x140219028]
xor rax, rsp
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x40], rcx
mov r15, qword [rcx + 8]
mov al, byte [r15 + 0x2c]
test al, 1
jne 0x1400df86d
mov rax, qword [r15 + 8]
mov eax, dword [rax + 0x24]
test al, 1
jne 0x1400df95e
mov r14, r9
mov ebx, r8d
movzx eax, byte [r9 + 0x17]
test al, al
js 0x1400decb8
and eax, 0x7f
jmp 0x1400decbc
mov rax, qword [r14 + 8]
add rax, 0x51
cmp rax, 0x59
mov r12d, 0x58
cmovae r12, rax
mov rcx, r15
mov rdx, r12
mov r8d, 0xf1645913
call fcn.1400e0a80
xor ecx, ecx
cmp eax, 0x40
jb 0x1400ded4e
mov eax, eax
mov edx, eax
and edx, 7
jne 0x1400ded4e
add r12, 0x10
xor ecx, ecx
mov rdx, rax
add rdx, r12
jb 0x1400ded4e
mov r8, rdx
shr r8, 0x20
jne 0x1400ded4e
mov r8d, dword [r15 + 0x14]
cmp r8d, edx
jb 0x1400dfb27
mov rdx, qword [r15 + 8]
mov ecx, dword [rdx + rax + 4]
cmp ecx, 0xc8799269
jne 0x1400dfb27
add rdx, rax
mov ecx, dword [rdx]
cmp r12, rcx
ja 0x1400dfb27
xor ecx, ecx
add eax, dword [rdx]
jb 0x1400ded4e
cmp eax, r8d
ja 0x1400ded4e
mov eax, dword [rdx + 8]
xor ecx, ecx
cmp eax, 0xf1645913
cmove rcx, rdx
lea rsi, [rcx + 0x10]
test rcx, rcx
cmove rsi, rcx
test rsi, rsi
je 0x1400df96d
mov edi, dword [rsp + 0x1a8]
xorps xmm0, xmm0
movups xmmword [rsi + 0x40], xmm0
movups xmmword [rsi + 0x30], xmm0
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x50], 0
lea rcx, [rsi + 0x50]
movzx eax, byte [r14 + 0x17]
mov r8d, eax
and r8d, 0x7f
test al, al
mov rdx, qword [r14]
cmovns rdx, r14
cmovs r8, qword [r14 + 8]
inc r8
call fcn.140131180
mov dword [rsi], ebx
or edi, 0x40
mov dword [rsi + 4], edi
mov dword [rsi + 0x1c], 0
cmp ebx, 4
je 0x1400dfaae
mov rdi, qword [rsp + 0x1a0]
mov rbx, qword [rdi + 8]
sub rbx, qword [rdi]
mov r14, rbx
sar r14, 2
movabs rax, 0xdfffffffffffffff
lea rcx, [r14 + rax]
add rax, 2
cmp rcx, rax
jb 0x1400df86d
mov eax, dword [rdi + 0x1c]
test eax, eax
je 0x1400df87a
test rsi, rsi
je 0x1400df86d
mov ecx, dword [rsp + 0x198]
mov edx, dword [rsp + 0x190]
movabs r8, 0xaaaaaaaaaaaaaaaa
mov dword [rsi + 8], edx
mov dword [rsi + 0xc], ecx
dec r14d
mov dword [rsi + 0x10], r14d
mov dword [rsi + 0x14], eax
mov eax, dword [rdi + 0x18]
mov dword [rsi + 0x18], eax
mov ebp, dword [rsi]
mov qword [r13], r8
cmp ebp, 4
je 0x1400dfabc
mov qword [rsp + 0x48], r13
mov eax, dword [rsi + 4]
mov dword [rsp + 0x64], eax
mov r13d, dword [rsi + 0x10]
mov eax, dword [rsi + 0x14]
mov r14d, dword [rsi + 0x18]
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 8]
lea r8d, [rax + 0x14]
xor edx, edx
cmp r8d, 0x54
jb 0x1400deecd
mov r9d, eax
and r9d, 7
jne 0x1400deecd
mov r9d, dword [rcx + 0x14]
cmp r9d, r8d
jb 0x1400dfb2e
mov r8, qword [rcx + 8]
mov edx, dword [r8 + rax + 4]
cmp edx, 0xc8799269
jne 0x1400dfb2e
add r8, rax
mov edx, dword [r8]
cmp edx, 0x14
jb 0x1400dfb2e
xor edx, edx
mov r10d, dword [r8]
add r10d, eax
jb 0x1400deecd
cmp r10d, r9d
ja 0x1400deecd
mov r9d, dword [r8 + 8]
xor edx, edx
cmp r9d, 0xbcea225b
cmove rdx, r8
lea r12, [rdx + 0x10]
test rdx, rdx
cmove r12, rdx
lea r9d, [rax + 0x10]
xor edx, edx
cmp r9d, 0x50
jb 0x1400def5b
mov r8d, eax
and r8d, 7
jne 0x1400def5b
mov r8d, dword [rcx + 0x14]
cmp r8d, r9d
jb 0x1400dfb94
mov r9, qword [rcx + 8]
mov edx, dword [r9 + rax + 4]
cmp edx, 0xc8799269
jne 0x1400dfb94
add r9, rax
mov edx, dword [r9]
cmp edx, 0x10
jb 0x1400dfb94
mov r10d, dword [r9]
add r10d, eax
setb r11b
xor edx, edx
test r9, r9
je 0x1400def5b
test r11b, r11b
jne 0x1400def5b
cmp r10d, r8d
ja 0x1400def5b
mov edx, dword [r9]
cmp rdx, 0x11
jb 0x1400dfb8d
add eax, edx
jb 0x1400dfb8d
cmp eax, r8d
ja 0x1400dfb8d
add rdx, 0xfffffffffffffff0
test r12, r12
je 0x1400dfb15
cmp r13d, 2
jb 0x1400dfb15
cmp r13d, 0x3ffffffe
ja 0x1400dfb15
lea edi, [r13 + 1]
lea rbx, [rdi*4]
cmp rdx, rbx
jb 0x1400dfb15
mov ecx, 0x20
call fcn.14012cd5c
mov r15, rax
mov rcx, rbx
call fcn.14012cd5c
mov qword [r15], rax
mov qword [r15 + 8], rax
lea rcx, [rax + rdi*4]
mov qword [r15 + 0x10], rcx
xor edx, edx
nop word cs:[rax + rax]
mov r8, rax
add r8, rdx
je 0x1400dfb61
mov dword [r8], 0
add rdx, 4
cmp rbx, rdx
jne 0x1400defc0
mov qword [r15 + 8], rcx
mov qword [r15 + 0x18], 0
test rdi, rdi
je 0x1400dfb35
mov ecx, dword [r12]
mov dword [rax], ecx
mov eax, 1
nop dword [rax]
mov ecx, dword [r12 + rax*4]
cmp ecx, dword [r12 + rax*4 - 4]
jle 0x1400dfb10
mov rdx, qword [r15]
mov r8, qword [r15 + 8]
sub r8, rdx
sar r8, 2
cmp r8, rax
jbe 0x1400dfb35
mov dword [rdx + rax*4], ecx
inc rax
cmp rdi, rax
jne 0x1400df000
mov rcx, qword [r15]
mov r8, qword [r15 + 8]
mov rdx, r8
sub rdx, rcx
je 0x1400dfb9b
mov rax, rdx
shr rax, 2
neg r8
xor r8, rcx
cmp r8, 0xffffffffffffffff
je 0x1400dfaa6
mov r9, rdx
and r9, 0xfffffffffffffffe
xor r8d, r8d
lea r10, [0x1401fa950]
nop dword [rax]
movzx r11d, al
movzx edi, byte [rcx + r8]
xor edi, r11d
shr eax, 8
xor eax, dword [r10 + rdi*4]
movzx r11d, al
movzx edi, byte [rcx + r8 + 1]
xor edi, r11d
shr eax, 8
xor eax, dword [r10 + rdi*4]
add r8, 2
cmp r9, r8
jne 0x1400df070
test dl, 1
je 0x1400df0bc
movzx edx, al
movzx ecx, byte [rcx + r8]
xor ecx, edx
lea rdx, [0x1401fa950]
shr eax, 8
xor eax, dword [rdx + rcx*4]
mov dword [r15 + 0x18], eax
cmp eax, r14d
jne 0x1400dfb10
test r15, r15
je 0x1400dfb15
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x10]
test rcx, rcx
jne 0x1400df97b
mov rcx, r15
call fcn.1400dfcc0
mov qword [rsp + 0x50], rax
xor r14d, r14d
lea rdi, [r13*8]
mov ecx, dword [rsi + 0x1c]
mov rax, qword [rsp + 0x40]
mov r15, qword [rax + 8]
test ecx, ecx
jne 0x1400df997
movabs rbx, 0xfffffffc00000000
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x98], rax
mov rax, r15
and rax, rbx
cmp rax, qword [0x140219dc8]
jne 0x1400df143
mov rcx, r15
call fcn.1400ad040
lea r12, [rsi + 0x1c]
mov qword [rsp + 0x88], r15
mov dword [rsp + 0x90], 0x53215531
cmp r13d, 0x1fffffff
mov qword [rsp + 0x58], r14
ja 0x1400dfbb6
mov eax, edi
mov dword [rsp + 0x94], eax
mov dword [rsp + 0x98], 0
mov r14, r12
and r14, rbx
cmp r14, qword [0x140219dc8]
je 0x1400dfbbe
mov qword [rsp + 0xa0], r12
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x40]
mov r15, qword [rax + 8]
mov rax, r15
and rax, rbx
cmp rax, qword [0x140219dc8]
jne 0x1400df1ca
mov rcx, r15
call fcn.1400ad040
lea eax, [r13*4]
mov qword [rsp + 0x68], r15
mov dword [rsp + 0x70], 0x53215531
cmp r13d, 0x1fffffff
ja 0x1400dfbcb
mov dword [rsp + 0x74], edi
mov dword [rsp + 0x78], eax
cmp r14, qword [0x140219dc8]
je 0x1400dfbd3
mov qword [rsp + 0x80], r12
cmp ebp, 3
ja case.default.0x1400df226
lea r13, [rsi + 0x50]
mov eax, ebp
lea rcx, [0x140200c3c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov ecx, 0x28
call fcn.14012cd5c
mov r15, rax
mov qword [rax + 8], r13
mov dword [rax + 0x10], 0
lea rax, [0x1401f1a88]
mov qword [r15], rax
xorps xmm6, xmm6
movups xmmword [r15 + 0x18], xmm6
test r13, r13
je 0x1400dfc84
mov rcx, r13
call fcn.140150e00
lea r12, [rsp + 0xc0]
movups xmmword [r12 + 0x34], xmm6
movups xmmword [r12 + 0x28], xmm6
movups xmmword [r12 + 0x18], xmm6
movups xmmword [r12 + 8], xmm6
movups xmmword [r12 - 8], xmm6
movaps xmm0, xmmword [0x1401f9c10]
movups xmmword [r12 - 0x18], xmm0
test rax, rax
je 0x1400df2d9
mov rbp, rax
lea eax, [rax*8]
mov rcx, rbp
shr rcx, 0x1d
mov dword [rsp + 0xbc], ecx
mov dword [rsp + 0xb8], eax
mov r8, rbp
cmp rbp, 0x40
jae 0x1400dfa76
mov dword [rsp + 0x100], ebp
mov rcx, r12
mov rdx, r13
call fcn.140131180
lea r13, [rsi + 0x20]
mov eax, dword [rsp + 0x100]
lea rcx, [rax + 1]
mov edi, dword [rsp + 0xb8]
mov r14d, dword [rsp + 0xbc]
mov byte [rsp + rax + 0xc0], 0x80
cmp rax, 0x38
jae 0x1400dfa43
cmp rcx, 0x38
je 0x1400df322
mov r8d, 0x38
sub r8, rcx
add rcx, r12
xor edx, edx
call fcn.140131830
lea rbp, [rsp + 0xa8]
mov dword [rbp + 0x50], edi
mov dword [rbp + 0x54], r14d
mov r8d, 1
mov rcx, rbp
mov rdx, r12
call fcn.14006aa00
mov rdi, qword [rbp]
mov ecx, 0x48
call fcn.14012cd5c
mov r12, rax
mov qword [rax + 8], 0
mov rax, r13
and rax, rbx
cmp rax, qword [0x140219dc8]
je 0x1400dfbf8
mov qword [r12 + 0x10], r13
cmp qword [r13], 0
mov r14, qword [rsp + 0x50]
jne 0x1400df386
bswap rdi
mov qword [r13], rdi
mov qword [r12 + 0x18], 0
mov rdi, r14
and rdi, rbx
cmp rdi, qword [0x140219dc8]
jne 0x1400df3a6
mov rcx, r14
call fcn.1400ad040
mov qword [r12 + 0x20], r14
mov rax, qword [r14 + 8]
sub rax, qword [r14]
cmp rax, 4
je 0x1400dfbe0
lea r14, [rsp + 0x90]
lea rbp, [0x1401f1200]
mov qword [r12], rbp
mov r13, qword [r14 - 8]
mov rax, r13
and rax, rbx
cmp rax, qword [0x140219dc8]
jne 0x1400df3ea
mov rcx, r13
call fcn.1400ad040
mov qword [r12 + 0x28], r13
mov eax, dword [r14 + 8]
mov dword [r12 + 0x38], eax
mov rax, qword [r14]
mov qword [r12 + 0x30], rax
mov r13, qword [rsp + 0xa0]
mov rax, r13
and rax, rbx
cmp rax, qword [0x140219dc8]
je 0x1400dfc05
lea r14, [r15 + 0x18]
mov qword [r12 + 0x40], r13
mov eax, dword [rsi + 0x34]
cmp eax, 0xffffffff
je 0x1400df843
lea r13, [rsi + 0x38]
mov rcx, qword [r14]
mov qword [r14], r12
test rcx, rcx
jne 0x1400dfc6e
mov rax, qword [r12 + 0x10]
mov r14, qword [rax]
mov ecx, 0x48
call fcn.14012cd5c
mov r12, rax
mov qword [rax + 8], 0
mov rax, r13
and rax, rbx
cmp rax, qword [0x140219dc8]
je 0x1400dfc12
mov qword [r12 + 0x10], r13
cmp qword [r13], 0
jne 0x1400df483
mov qword [r13], r14
mov qword [r12 + 0x18], 0
cmp rdi, qword [0x140219dc8]
mov rdi, qword [rsp + 0x50]
jne 0x1400df4a2
mov rcx, rdi
call fcn.1400ad040
mov qword [r12 + 0x20], rdi
mov rax, qword [rdi + 8]
sub rax, qword [rdi]
cmp rax, 4
mov r13, qword [rsp + 0x48]
je 0x1400dfbe3
lea rdi, [rsp + 0x70]
mov qword [r12], rbp
mov r14, qword [rdi - 8]
mov rax, r14
and rax, rbx
cmp rax, qword [0x140219dc8]
jne 0x1400df4e1
mov rcx, r14
call fcn.1400ad040
mov qword [r12 + 0x28], r14
mov eax, dword [rdi + 8]
mov dword [r12 + 0x38], eax
mov rax, qword [rdi]
mov qword [r12 + 0x30], rax
mov r14, qword [rsp + 0x80]
mov rax, r14
and rax, rbx
cmp rax, qword [0x140219dc8]
je 0x1400dfc1f
mov qword [r12 + 0x40], r14
mov eax, dword [rsi + 0x4c]
cmp eax, 0xffffffff
je 0x1400df7c4
mov rcx, qword [r15 + 0x20]
mov qword [r15 + 0x20], r12
test rcx, rcx
mov r14, qword [rsp + 0x58]
jne 0x1400dfc58
test r15, r15
je 0x1400df956
mov eax, dword [rsp + 0x64]
lock or dword [r15 + 0x10], eax
mov qword [r13], r15
mov rcx, qword [rsp + 0x80]
mov rax, rcx
and rax, rbx
cmp rax, qword [0x140219dc8]
je 0x1400dfba2
mov qword [rsp + 0x80], 0
mov rcx, qword [rsp + 0x68]
mov rax, rcx
and rax, rbx
cmp rax, qword [0x140219dc8]
jne 0x1400df58e
call fcn.1400ad190
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
and rax, rbx
cmp rax, qword [0x140219dc8]
je 0x1400dfbac
mov qword [rsp + 0xa0], 0
mov rcx, qword [rsp + 0x88]
and rbx, rcx
cmp rbx, qword [0x140219dc8]
jne 0x1400df5ce
call fcn.1400ad190
test r14, r14
jne 0x1400df6c2
mov rax, qword [rsp + 0x1b0]
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rcx + 8]
mov r8, qword [rdx + 8]
xor ecx, ecx
cmp r8, rsi
ja 0x1400df684
sub rsi, r8
cmp rsi, 0x10
jb 0x1400df684
mov r9d, dword [rdx + 0x14]
cmp rsi, r9
jae 0x1400df684
lea ecx, [rsi - 0x10]
xor edx, edx
cmp ecx, 0x40
jb 0x1400df83b
mov r10d, ecx
and r10d, 7
jne 0x1400df83b
mov r10d, 0
cmp r9d, esi
jbe 0x1400df677
mov r10d, dword [r8 + rcx + 4]
cmp r10d, 0xc8799269
jne 0x1400df83b
add r8, rcx
mov r10d, dword [r8]
cmp r10d, 0x11
jb 0x1400df83b
xor r10d, r10d
mov r11d, dword [r8]
add r11d, ecx
jb 0x1400df677
cmp r11d, r9d
ja 0x1400df677
mov r9d, dword [r8 + 8]
xor r10d, r10d
cmp r9d, 0xf1645913
cmove r10, r8
cmp r10, 0xfffffffffffffff0
cmove ecx, edx
test r10, r10
cmove ecx, edx
test rax, rax
je 0x1400df68b
mov dword [rax], ecx
mov rax, qword [rsp + 0x40]
mov dword [rax + 0x50], ecx
mov rcx, qword [rsp + 0x108]
xor rcx, rsp
call fcn.14012f6f0
mov rax, r13
movaps xmm6, xmmword [rsp + 0x110]
add rsp, 0x128
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [r14]
test rcx, rcx
jne 0x1400df7a2
mov rcx, r14
call fcn.14012cd4c
jmp 0x1400df5d7
lea rdi, [rsi + 0x38]
lea r14, [rsi + 0x20]
mov ecx, 0x40
call fcn.14012cd5c
mov r15, rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r14
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x88]
mov rcx, r15
mov rdx, r13
mov r8, qword [rsp + 0x50]
call fcn.1400e0610
lea rax, [0x1401f1b48]
mov qword [r15], rax
lea rax, [r15 + 0x30]
xorps xmm0, xmm0
movups xmmword [r15 + 0x30], xmm0
mov qword [r15 + 0x28], rax
mov r13, qword [rsp + 0x48]
mov r14, qword [rsp + 0x58]
jmp 0x1400df538
lea rdi, [rsi + 0x38]
lea r14, [rsi + 0x20]
mov ecx, 0x40
call fcn.14012cd5c
mov r15, rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r14
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x88]
mov rcx, r15
mov rdx, r13
mov r8, qword [rsp + 0x50]
call fcn.1400e0610
lea rax, [r15 + 0x30]
xorps xmm0, xmm0
movups xmmword [r15 + 0x30], xmm0
mov qword [r15 + 0x28], rax
lea rax, [0x1401f1c08]
mov qword [r15], rax
jmp 0x1400df736
mov rax, qword [r14 + 8]
cmp rax, rcx
je 0x1400df7b6
add rax, 0xfffffffffffffffc
jne 0x1400df7a6
jmp 0x1400dfc2c
mov qword [r14 + 8], rcx
call fcn.14012cd4c
jmp 0x1400df6ce
mov rax, qword [r12 + 0x40]
mov eax, dword [rax]
test eax, eax
je 0x1400df522
mov rcx, r12
add rcx, 0x28
call fcn.1400b0030
mov qword [r12 + 0x18], rax
mov rax, qword [r12 + 0x18]
jmp 0x1400df522
lea rdi, [rsi + 0x38]
lea r14, [rsi + 0x20]
mov ecx, 0x28
call fcn.14012cd5c
mov r15, rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r14
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x88]
mov rcx, r15
mov rdx, r13
mov r8, qword [rsp + 0x50]
call fcn.1400e0610
lea rax, [0x1401f1cc8]
jmp 0x1400df79d
xor r10d, r10d
jmp 0x1400df677
mov rax, qword [r12 + 0x40]
mov eax, dword [rax]
test eax, eax
je 0x1400df430
mov rcx, r12
add rcx, 0x28
call fcn.1400b0030
mov qword [r12 + 0x18], rax
mov rax, qword [r12 + 0x18]
jmp 0x1400df430
mov qword [r13], 0
jmp 0x1400df693
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 8]
mov rdx, rbx
mov r8d, 0xbcea225b
call fcn.1400e0a80
test eax, eax
je 0x1400df86d
cmp eax, 0x40
jb 0x1400df86d
mov ecx, eax
mov edx, ecx
and edx, 7
jne 0x1400df86d
add rbx, 0x10
mov rdx, rcx
add rdx, rbx
jb 0x1400df86d
mov r8, rdx
shr r8, 0x20
jne 0x1400df86d
mov r8, qword [rsp + 0x40]
mov r9, qword [r8 + 8]
mov r8d, dword [r9 + 0x14]
cmp r8d, edx
jb 0x1400df86d
mov rdx, qword [r9 + 8]
mov r9d, dword [rdx + rcx + 4]
cmp r9d, 0xc8799269
jne 0x1400df86d
add rdx, rcx
mov ecx, dword [rdx]
cmp rbx, rcx
ja 0x1400df86d
mov ecx, dword [rdx]
add ecx, eax
jb 0x1400df86d
cmp ecx, r8d
ja 0x1400df86d
mov r8d, dword [rdx + 8]
xor ecx, ecx
cmp r8d, 0xbcea225b
cmove rcx, rdx
test rcx, rcx
je 0x1400df86d
add rcx, 0x10
je 0x1400df86d
mov rdx, qword [rdi]
cmp qword [rdi + 8], rdx
je 0x1400df94e
xor r8d, r8d
nop word cs:[rax + rax]
mov edx, dword [rdx + r8*4]
mov dword [rcx + r8*4], edx
inc r8
mov rdx, qword [rdi]
mov r9, qword [rdi + 8]
sub r9, rdx
sar r9, 2
cmp r8, r9
jb 0x1400df930
mov dword [rdi + 0x1c], eax
jmp 0x1400dee01
xor r15d, r15d
jmp 0x1400df54a
mov rcx, r15
xor edx, edx
call fcn.140168140
jmp 0x1400df86d
cmp ebx, 4
jne 0x1400dedc5
jmp 0x1400df86d
mov rdx, r15
call fcn.1400e1630
xor r14d, r14d
mov qword [rsp + 0x50], rax
cmp rax, r15
cmovne r14, r15
jmp 0x1400df0f4
lea r8d, [rcx + 0x10]
xor eax, eax
cmp r8d, 0x50
jb 0x1400df9fe
mov edx, ecx
and edx, 7
jne 0x1400df9fe
mov edx, dword [r15 + 0x14]
cmp edx, r8d
jb 0x1400dfa2d
mov r8, qword [r15 + 8]
mov eax, dword [r8 + rcx + 4]
cmp eax, 0xc8799269
jne 0x1400dfa2d
add r8, rcx
mov eax, dword [r8]
cmp eax, 0x10
jb 0x1400dfa2d
mov r9d, dword [r8]
add r9d, ecx
setb r10b
xor eax, eax
test r8, r8
je 0x1400df9fe
test r10b, r10b
jne 0x1400df9fe
cmp r9d, edx
ja 0x1400df9fe
mov eax, dword [r8]
cmp rax, 0x11
jb 0x1400dfa23
add ecx, eax
jb 0x1400dfa23
cmp ecx, edx
ja 0x1400dfa23
add rax, 0xfffffffffffffff0
cmp rax, rdi
jb 0x1400dfa11
mov rax, qword [rsp + 0x40]
mov r15, qword [rax + 8]
jmp 0x1400df110
mov r13, qword [rsp + 0x48]
mov qword [r13], 0
jmp 0x1400df5ce
mov rcx, r15
mov dl, 1
call fcn.140168140
xor eax, eax
jmp 0x1400df9fe
mov r8d, 0x3f
sub r8, rax
xor edx, edx
call fcn.140131830
jmp 0x1400dfa59
cmp eax, 0x3f
je 0x1400dfa59
add rcx, r12
cmp eax, 0x3c
jne 0x1400dfa31
mov byte [rcx + 2], 0
mov word [rcx], 0
lea rcx, [rsp + 0xa8]
mov r8d, 1
mov rdx, r12
call fcn.14006aa00
xor ecx, ecx
jmp 0x1400df30f
shr r8, 6
lea rcx, [rsp + 0xa8]
mov rdx, r13
call fcn.14006aa00
mov r8, rbp
and r8, 0x3f
je 0x1400df2d9
and rbp, 0xffffffffffffffc0
add r13, rbp
mov ebp, r8d
jmp 0x1400df2c7
xor r8d, r8d
jmp 0x1400df0a0
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [r13], rax
lea rdi, [rsi + 0x38]
lea rbx, [rsi + 0x20]
lea r14, [rsi + 0x50]
mov ecx, 0x38
call fcn.14012cd5c
mov r15, rax
mov qword [rsp + 0x20], rdi
mov rcx, rax
mov rdx, qword [rsp + 0x40]
mov r8, r14
mov r9, rbx
call fcn.14001bef0
mov qword [r13], r15
mov eax, dword [rsi + 4]
lock or dword [r15 + 0x10], eax
jmp 0x1400df5d7
mov rcx, r15
call fcn.140121590
mov rcx, r15
call fcn.14012cd4c
jmp 0x1400dfb15
test r15, r15
jne 0x1400dfafe
mov r13, qword [rsp + 0x48]
mov qword [r13], 0
jmp 0x1400df5d7
xor ecx, ecx
jmp 0x1400ded4e
xor edx, edx
jmp 0x1400deecd
lea rax, str.vector___index_out_of_bounds
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_vector
lea r9, str.__n___size__
mov r8d, 0x601
call fcn.140167fb0
lea rax, str.null_pointer_given_to_construct_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__location___nullptr
mov r8d, 0x28
call fcn.140167fb0
mov dl, 1
call fcn.140168140
xor edx, edx
jmp 0x1400def5b
xor eax, eax
jmp 0x1400df0bc
call fcn.1400ad190
jmp 0x1400df569
call fcn.1400ad190
jmp 0x1400df5a9
int3
mov rcx, r12
call fcn.1400ad040
jmp 0x1400df193
int3
mov rcx, r12
call fcn.1400ad040
jmp 0x1400df201
int3
int3
xor r15d, r15d
mov r13, qword [rsp + 0x48]
mov r14, qword [rsp + 0x58]
jmp 0x1400df54a
mov rcx, r13
call fcn.1400ad040
jmp 0x1400df36e
mov rcx, r13
call fcn.1400ad040
jmp 0x1400df41b
mov rcx, r13
call fcn.1400ad040
jmp 0x1400df473
mov rcx, r14
call fcn.1400ad040
jmp 0x1400df511
lea rax, str.null_pointer_given_to_destroy_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__loc___nullptr
mov r8d, 0x44
call fcn.140167fb0
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 1
call qword [0x140243008]
jmp 0x1400df538
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 1
call qword [0x140243008]
jmp 0x1400df443
lea rax, str.null_pointer_passed_to_non_null_argument_of_char_traits_..._::length
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.__s___nullptr
mov r8d, 0x109
call fcn.140167fb0
int3