Function at 0x1400ad9a0
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x248
mov rbx, rdx
mov rdi, rcx
mov rax, qword [0x14022b040]
xor rax, rsp
mov qword [rsp + 0x240], rax
mov r14, qword [rcx + 0x18]
cmp qword [r14 + 0x10], 0
jne 0x1400adcc7
mov dword [rsp + 0x232], 0xaaaaaaaa
mov byte [rsp + 0x231], 0x2a
mov rbp, qword [r14]
mov r12, qword [rbp + 0x18]
lea rax, [r12 + 1]
cmp rax, qword [rbp + 0x10]
ja 0x1400ae2a0
mov byte [r12], 0x2a
mov qword [rbp + 0x18], rax
inc dword [r14 + 0x20]
mov rsi, qword [r14 + 8]
mov rbp, qword [rsi]
mov ecx, dword [rbp + 0x288]
cmp ecx, 0x10
jae 0x1400aeaa3
lea eax, [rcx + 1]
mov dword [rbp + 0x288], eax
mov eax, ecx
lea r9, [rax + rax*4]
lea r12, [r9*8 + 8]
add r12, rbp
xorps xmm0, xmm0
movups xmmword [rbp + r9*8 + 0x18], xmm0
movups xmmword [rbp + r9*8 + 8], xmm0
mov qword [rbp + r9*8 + 0x28], 0
movups xmm1, xmmword [r14]
movups xmmword [rbp + r9*8 + 8], xmm1
movups xmmword [rbp + r9*8 + 0x18], xmm0
mov qword [rbp + r9*8 + 0x25], 0
mov rsi, qword [r14]
mov rax, qword [rsi + 0x18]
lea rcx, [rax + 4]
cmp rcx, qword [rsi + 0x10]
ja 0x1400ae7ab
lea rcx, [rax + 4]
mov qword [rsi + 0x18], rcx
mov qword [r12 + 0x18], rax
add dword [r14 + 0x20], 4
mov qword [rsp + 0x58], r12
mov qword [r14 + 0x10], r12
mov rsi, qword [rbx]
mov qword [rsp + 0x210], rsi
mov r14, qword [rbx + 8]
mov qword [rsp + 0x218], r14
mov r12d, dword [rbx + 0x10]
mov dword [rsp + 0x220], r12d
mov r8, qword [rdi + 0x20]
lea rdi, [r8 + 0xb0]
mov rdx, qword [r8 + 0xb0]
cmp rdx, 4
mov qword [rsp + 0x48], r8
je 0x1400adced
lea r13, [r8 + 0xc0]
mov rcx, qword [r8 + 0xc0]
cmp rcx, 4
je 0x1400adcd9
lea r11, [r8 + 0xd0]
mov rax, qword [r8 + 0xd0]
cmp rax, 4
je 0x1400adcea
lea r10, [r8 + 0xe0]
mov r15, qword [r8 + 0xe0]
cmp r15, 4
je 0x1400adcd4
mov qword [rsp + 0x40], r11
lea r11, [r8 + 0xf0]
mov rbx, qword [r8 + 0xf0]
mov qword [rsp + 0x50], rbx
cmp rbx, 4
je 0x1400adcea
mov qword [rsp + 0x208], r10
mov qword [rsp + 0x38], r9
lea r10, [r8 + 0x100]
mov r9, qword [r8 + 0x100]
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x1f8], r9
mov qword [rsp + 0x200], r11
lea r9, [r8 + 0x110]
mov r11, qword [r8 + 0x110]
cmp r11, 4
je 0x1400adcc2
mov qword [rsp + 0x1e8], r11
mov qword [rsp + 0x1f0], r10
lea r10, [r8 + 0x120]
mov r11, qword [r8 + 0x120]
cmp r11, 4
je 0x1400adcb8
mov qword [rsp + 0x1d8], r11
mov qword [rsp + 0x1e0], r9
lea r9, [r8 + 0x130]
mov r11, qword [r8 + 0x130]
mov qword [rsp + 0x1d0], r11
cmp r11, 4
je 0x1400adcc2
mov qword [rsp + 0x1c8], r10
mov qword [rsp + 0x1c0], r9
lea r9, [r8 + 0x140]
mov r10, qword [r8 + 0x140]
mov qword [rsp + 0x1b8], r10
cmp r10, 4
je 0x1400adcc2
mov qword [rsp + 0x1b0], r9
lea r10, [r8 + 0x150]
mov r9, qword [r8 + 0x150]
mov qword [rsp + 0x1a8], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x1a0], r10
lea r10, [r8 + 0x160]
mov r9, qword [r8 + 0x160]
mov qword [rsp + 0x198], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x190], r10
lea r10, [r8 + 0x170]
mov r9, qword [r8 + 0x170]
mov qword [rsp + 0x188], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x180], r10
lea r10, [r8 + 0x180]
mov r9, qword [r8 + 0x180]
mov qword [rsp + 0x178], r9
cmp r9, 4
jne 0x1400ae415
mov rdi, r10
mov r9, qword [rsp + 0x38]
jmp 0x1400adced
mov rdi, r9
jmp 0x1400adcbb
mov rcx, r14
call fcn.1400a0420
jmp 0x1400ad9da
mov rdi, r10
jmp 0x1400adced
mov rdi, r13
jmp 0x1400adced
lea r13, [rdi - 1]
and r13, r15
jmp 0x1400addf2
mov rdi, r11
add rdi, 8
mov rbx, rdi
movsxd r15, r12d
mov r10, qword [rbx]
lea r11, [r10 + 8]
mov rdi, qword [r10 + 0x10]
mov rbx, qword [r10 + 0x20]
mov rax, r14
shr rax, 0x20
mov rcx, rsi
shr rcx, 0x20
mov edx, r14d
imul rdx, rdx, 0x32348c9d
imul rax, rax, 0x24e62a03
add rax, rdx
mov edx, esi
imul rdx, rdx, 0x37da1fb9
mov r8d, 0xc54622fd
imul rcx, r8
add rcx, rdx
add rcx, rax
mov eax, ecx
shr rcx, 0x20
shr r15, 0x20
imul rax, rax, 0x32348c9d
imul rcx, rcx, 0x24e62a03
mov edx, r12d
imul rdx, rdx, 0x37da1fb9
imul r15, r8
add r15, rdx
add r15, rcx
add r15, rax
test rdi, rdi
je 0x1400adf8e
mov rax, rdi
shr rax, 1
movabs rcx, 0x5555555555555555
and rcx, rax
mov rax, rdi
sub rax, rcx
movabs rcx, 0x3333333333333333
mov rdx, rax
and rdx, rcx
shr rax, 2
and rax, rcx
add rax, rdx
mov rcx, rax
shr rcx, 4
add rcx, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rax, rcx
movabs r8, 0x101010101010101
imul r8, rax
shr r8, 0x38
cmp r8, 1
jbe 0x1400adcde
mov r13, r15
cmp r15, rdi
jb 0x1400addf2
mov rax, r15
xor edx, edx
div rdi
mov r13, rdx
mov rax, qword [r11]
mov rax, qword [rax + r13*8]
test rax, rax
je 0x1400adfa9
mov rcx, qword [rax]
test rcx, rcx
je 0x1400adfa9
cmp r8d, 2
jb 0x1400adf52
mov rax, qword [rcx + 8]
cmp rax, r15
jne 0x1400adf1e
cmp qword [rcx + 0x18], r14
jne 0x1400adf30
cmp qword [rcx + 0x10], rsi
jne 0x1400adf30
cmp dword [rcx + 0x20], r12d
jne 0x1400adf30
mov rbx, qword [rcx + 0x28]
mov r12, qword [rsp + 0x58]
lea rax, [r9*8 + 0x18]
add rax, rbp
cmp qword [rax], 0
jne 0x1400ae79e
lea rax, [rsp + 0x231]
lea rcx, [rsp + 0x232]
movabs rdx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x238], rdx
mov qword [rsp + 0x232], rdx
mov byte [rsp + 0x231], 8
cmp rbx, 0x80
jae 0x1400adefb
mov rsi, rax
mov byte [rcx], bl
sub rsi, rax
add rsi, 2
mov r13, qword [r12]
mov edi, esi
mov r15, qword [r13 + 0x18]
lea rbx, [r15 + rdi]
cmp rbx, qword [r13 + 0x10]
ja 0x1400ae361
test rdi, rdi
je 0x1400aded8
lea rdx, [rsp + 0x231]
mov rcx, r15
mov r8, rdi
call fcn.1401671f0
mov qword [r13 + 0x18], rbx
add dword [r12 + 0x20], esi
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
cmp rcx, qword [0x14022b040]
je 0x1400adf3e
call fcn.1401335a0
int3
mov rdx, rbx
mov r8d, edx
or r8b, 0x80
mov byte [rcx], r8b
shr rbx, 7
inc rcx
cmp rdx, 0x3fff
ja 0x1400adefb
lea rsi, [rcx - 1]
jmp 0x1400ade9f
cmp rax, rdi
jb 0x1400adf2b
xor edx, edx
div rdi
mov rax, rdx
cmp rax, r13
jne 0x1400adfa9
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1400ade18
jmp 0x1400adfa9
add rsp, 0x248
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x40], r11
lea rax, [rdi - 1]
mov rdx, qword [rcx + 8]
cmp rdx, r15
jne 0x1400adf7c
cmp qword [rcx + 0x18], r14
jne 0x1400adf84
cmp qword [rcx + 0x10], rsi
jne 0x1400adf84
cmp dword [rcx + 0x20], r12d
je 0x1400ade43
jmp 0x1400adf84
and rdx, rax
cmp rdx, r13
jne 0x1400adfae
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1400adf5b
jmp 0x1400adfae
mov qword [rsp + 0x40], r11
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x38], r9
movabs r13, 0xaaaaaaaaaaaaaaaa
jmp 0x1400adfb8
mov qword [rsp + 0x40], r11
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x38], r9
mov ecx, 0x30
call fcn.140130ce8
test rax, rax
je 0x1400aeacc
mov r9, rax
inc rbx
mov qword [rax], 0
mov qword [rax + 8], r15
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], r14
mov dword [rax + 0x20], r12d
mov qword [rax + 0x28], rbx
mov r10, qword [rsp + 0x50]
mov rax, qword [r10 + 0x20]
inc rax
jns 0x1400ae011
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
jmp 0x1400ae016
cvtsi2ss xmm0, rax
mov r12, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
mov rdx, rdi
shr rdx, 1
mov eax, edi
and eax, 1
or rax, rdx
test rdi, rdi
jns 0x1400ae043
cvtsi2ss xmm1, rax
addss xmm1, xmm1
jmp 0x1400ae048
cvtsi2ss xmm1, rdi
movss xmm2, dword [r10 + 0x28]
je 0x1400ae0e8
mulss xmm1, xmm2
ucomiss xmm0, xmm1
ja 0x1400ae0e8
mov r8, qword [r14]
mov rax, qword [r8 + r13*8]
test rax, rax
jne 0x1400ae0cb
lea rdx, [r10 + 0x18]
mov rax, qword [r10 + 0x18]
mov qword [r9], rax
mov qword [r10 + 0x18], r9
mov qword [r8 + r13*8], rdx
test rax, rax
je 0x1400ae0a9
mov rax, qword [rax + 8]
lea rdx, [rdi - 1]
test rdi, rdx
je 0x1400ae0d3
cmp rax, rdi
jb 0x1400ae09f
xor edx, edx
div rdi
mov rax, rdx
shl rax, 3
add rax, qword [r14]
mov qword [rax], r9
inc qword [r10 + 0x20]
sub rcx, 0xffffffffffffff80
lea r8, [rsp + 0x210]
mov rdx, rbx
call fcn.1401026d0
mov r9, qword [rsp + 0x38]
jmp 0x1400ade4c
mov rdx, qword [rax]
mov qword [r9], rdx
jmp 0x1400ae0a6
and rax, rdx
jmp 0x1400ae09f
lea rdx, [rdi - 1]
xor r13d, r13d
test rdi, rdx
setne r13b
jmp 0x1400ae128
mov qword [rsp + 0x40], r9
mov rsi, r10
divss xmm0, xmm2
call fcn.14014e408
cvttss2si rcx, xmm0
mov rdx, rcx
subss xmm0, dword [0x14020a4f8]
sar rdx, 0x3f
cvttss2si rax, xmm0
and rax, rdx
or rax, rcx
lea rcx, [rdi + rdi]
mov r13d, 1
cmp rdi, 3
jae 0x1400ae0d8
or r13, rcx
cmp r13, rax
cmovbe r13, rax
cmp r13, 1
jne 0x1400ae1d1
mov r13d, 2
cmp rdi, 2
jae 0x1400aeb95
lea rcx, [r13*8]
call fcn.140130ce8
mov rdx, r14
mov rcx, qword [r14]
mov qword [r14], rax
test rcx, rcx
je 0x1400ae16f
call fcn.140130d24
mov rdx, r14
mov r10, rsi
mov qword [rsi + 0x10], r13
xor eax, eax
mov rcx, qword [rdx]
mov qword [rcx + rax*8], 0
inc rax
cmp r13, rax
jne 0x1400ae178
mov r8, qword [r10 + 0x18]
test r8, r8
mov rcx, qword [rsp + 0x48]
jne 0x1400ae204
mov rdi, qword [r10 + 0x10]
lea r13, [rdi - 1]
test rdi, r13
jne 0x1400ae1b3
and r13, r15
mov r9, qword [rsp + 0x40]
jmp 0x1400ae061
cmp r15, rdi
mov r9, qword [rsp + 0x40]
jb 0x1400aeb47
mov rax, r15
xor edx, edx
div rdi
mov r13, rdx
jmp 0x1400ae061
lea rax, [r13 - 1]
test r13, rax
je 0x1400ae1e9
mov rcx, r13
call fcn.1401031b0
mov r13, rax
mov rdi, qword [rsi + 0x10]
cmp r13, rdi
jbe 0x1400aeb95
mov rax, r13
shr rax, 0x3d
je 0x1400ae14c
jmp 0x1400aeace
lea r9, [r10 + 0x18]
mov r11, qword [r8 + 8]
lea rax, [r13 - 1]
test r13, rax
je 0x1400aead3
cmp r11, r13
jb 0x1400ae229
mov rax, r11
xor edx, edx
div r13
mov r11, rdx
mov rax, qword [r14]
mov qword [rax + r11*8], r9
mov r9, qword [r8]
jmp 0x1400ae261
mov rdx, qword [r9]
mov qword [r8], rdx
mov rdx, qword [r14]
mov rdx, qword [rdx + rax*8]
mov rdx, qword [rdx]
mov qword [r9], rdx
mov rdx, qword [r14]
mov rax, qword [rdx + rax*8]
mov qword [rax], r9
mov r9, r8
mov rax, r11
mov r8, r9
mov r9, qword [r9]
mov r11, rax
test r9, r9
je 0x1400ae199
mov rax, qword [r9 + 8]
cmp rax, r13
jb 0x1400ae27b
xor edx, edx
div r13
mov rax, rdx
cmp rax, r11
je 0x1400ae255
mov rdx, qword [r14]
cmp qword [rdx + rax*8], 0
jne 0x1400ae235
mov qword [rdx + rax*8], r8
jmp 0x1400ae258
lea rdx, [rsp + 0x210]
call qword [0x14021e0b8]
jmp 0x1400ae2f1
lea rax, [rbp + 8]
mov qword [rsp + 0x58], rax
mov r15d, 1
lea rsi, [rsp + 0x231]
mov rax, qword [rbp + 0x10]
cmp r12, rax
jb 0x1400ae319
mov rcx, qword [rbp]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
lea rdx, [0x14012e200]
cmp rax, rdx
jne 0x1400ae290
cmp byte [rcx + 0x18], 1
je 0x1400aeb4f
mov byte [rcx + 0x18], 1
movups xmm0, xmmword [rcx + 8]
movaps xmmword [rsp + 0x210], xmm0
mov rax, qword [rbp + 0x18]
sub rax, qword [rbp + 8]
add qword [rbp + 0x20], rax
movaps xmm0, xmmword [rsp + 0x210]
mov rax, qword [rsp + 0x58]
movups xmmword [rax], xmm0
mov r12, qword [rsp + 0x210]
mov rax, qword [rbp + 0x10]
mov r13, rax
sub r13, r12
cmp r15, r13
cmovb r13, r15
cmp rax, r12
je 0x1400ae339
mov rcx, r12
mov rdx, rsi
mov r8, r13
call fcn.1401671f0
add r12, r13
mov qword [rbp + 0x18], r12
add rsi, r13
sub r15, r13
je 0x1400ada0c
jmp 0x1400ae2b7
lea rdx, [rsp + 0x210]
call qword [0x14021e0b8]
jmp 0x1400ae3b0
test rdi, rdi
je 0x1400adedc
lea rbp, [r13 + 8]
lea rbx, [rsp + 0x231]
lea r14, [0x14012e200]
mov rax, qword [r13 + 0x10]
cmp r15, rax
jb 0x1400ae3d8
mov rcx, qword [r13]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
cmp rax, r14
jne 0x1400ae351
cmp byte [rcx + 0x18], 1
je 0x1400aeb4f
mov byte [rcx + 0x18], 1
movups xmm0, xmmword [rcx + 8]
movaps xmmword [rsp + 0x210], xmm0
mov rax, qword [r13 + 0x18]
sub rax, qword [r13 + 8]
add qword [r13 + 0x20], rax
movaps xmm0, xmmword [rsp + 0x210]
movups xmmword [rbp], xmm0
mov r15, qword [rsp + 0x210]
mov qword [r13 + 0x18], r15
mov rax, qword [r13 + 0x10]
mov r12, rax
sub r12, r15
cmp rdi, r12
cmovb r12, rdi
cmp rax, r15
je 0x1400ae3f8
mov rcx, r15
mov rdx, rbx
mov r8, r12
call fcn.1401671f0
add r15, r12
mov qword [r13 + 0x18], r15
add rbx, r12
sub rdi, r12
mov r12, qword [rsp + 0x58]
je 0x1400adedc
jmp 0x1400ae37d
mov qword [rsp + 0x170], r10
lea r10, [r8 + 0x190]
mov r9, qword [r8 + 0x190]
mov qword [rsp + 0x168], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x160], r10
lea r10, [r8 + 0x1a0]
mov r9, qword [r8 + 0x1a0]
mov qword [rsp + 0x158], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x150], r10
lea r10, [r8 + 0x1b0]
mov r9, qword [r8 + 0x1b0]
mov qword [rsp + 0x148], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x140], r10
lea r10, [r8 + 0x1c0]
mov r9, qword [r8 + 0x1c0]
mov qword [rsp + 0x138], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x130], r10
lea r10, [r8 + 0x1d0]
mov r9, qword [r8 + 0x1d0]
mov qword [rsp + 0x128], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x120], r10
lea r10, [r8 + 0x1e0]
mov r9, qword [r8 + 0x1e0]
mov qword [rsp + 0x118], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x110], r10
lea r10, [r8 + 0x1f0]
mov r9, qword [r8 + 0x1f0]
mov qword [rsp + 0x108], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0x100], r10
lea r10, [r8 + 0x200]
mov r9, qword [r8 + 0x200]
mov qword [rsp + 0xf8], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0xf0], r10
lea r10, [r8 + 0x210]
mov r9, qword [r8 + 0x210]
mov qword [rsp + 0xe8], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0xe0], r10
lea r10, [r8 + 0x220]
mov r9, qword [r8 + 0x220]
mov qword [rsp + 0xd8], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0xd0], r10
lea r10, [r8 + 0x230]
mov r9, qword [r8 + 0x230]
mov qword [rsp + 0xc8], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0xc0], r10
lea r10, [r8 + 0x240]
mov r9, qword [r8 + 0x240]
mov qword [rsp + 0xb8], r9
cmp r9, 4
je 0x1400adcb8
mov qword [rsp + 0xb0], r10
lea r9, [r8 + 0x250]
mov qword [rsp + 0x88], r9
mov r9, qword [r8 + 0x250]
mov qword [rsp + 0xa8], r9
cmp r9, 4
je 0x1400ae75c
lea r9, [r8 + 0x260]
mov qword [rsp + 0x80], r9
mov r9, qword [r8 + 0x260]
mov qword [rsp + 0xa0], r9
cmp r9, 4
je 0x1400ae769
lea r9, [r8 + 0x270]
mov qword [rsp + 0x78], r9
mov r8, qword [r8 + 0x270]
mov qword [rsp + 0x98], r8
cmp r8, 4
je 0x1400ae776
mov r9, qword [rsp + 0x48]
lea r8, [r9 + 0x280]
mov qword [rsp + 0x70], r8
mov r9, qword [r9 + 0x280]
cmp r9, 4
je 0x1400ae780
mov r10, qword [rsp + 0x48]
lea r8, [r10 + 0x290]
mov qword [rsp + 0x68], r8
mov r8, qword [r10 + 0x290]
mov qword [rsp + 0x90], r8
cmp r8, 4
je 0x1400ae78a
mov r10, qword [rsp + 0x48]
lea r8, [r10 + 0x2a0]
mov qword [rsp + 0x60], r8
mov r8, qword [r10 + 0x2a0]
cmp r8, 4
je 0x1400ae794
test rdx, rdx
je 0x1400ae708
mov rdi, r13
test rcx, rcx
je 0x1400ae708
mov rdi, qword [rsp + 0x40]
test rax, rax
je 0x1400ae708
mov rdi, qword [rsp + 0x208]
test r15, r15
jne 0x1400ae7e8
mov qword [rdi], 4
lea rbx, [rdi + 8]
mov ecx, 0x30
call fcn.140130ce8
xorps xmm0, xmm0
movups xmmword [rax + 8], xmm0
movups xmmword [rax + 0x18], xmm0
mov qword [rax + 0x28], 0
mov dword [rax + 0x28], 0x3f800000
lea rcx, [0x1401fc470]
mov qword [rax], rcx
mov rcx, qword [rdi + 8]
mov qword [rdi + 8], rax
test rcx, rcx
jne 0x1400aecc1
mov r9, qword [rsp + 0x38]
jmp 0x1400adcf4
mov rdi, qword [rsp + 0x88]
jmp 0x1400adcbb
mov rdi, qword [rsp + 0x80]
jmp 0x1400adcbb
mov rdi, qword [rsp + 0x78]
jmp 0x1400adcbb
mov rdi, qword [rsp + 0x70]
jmp 0x1400adcbb
mov rdi, qword [rsp + 0x68]
jmp 0x1400adcbb
mov rdi, qword [rsp + 0x60]
jmp 0x1400adcbb
mov rcx, r12
call fcn.1400a0420
jmp 0x1400ade61
mov rcx, qword [rsi]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
lea r15, [rsp + 0x210]
mov rdx, r15
mov r13, r9
call qword [0x14021e0b8]
mov r9, r13
mov rax, qword [rsi + 0x18]
sub rax, qword [rsi + 8]
add qword [rsi + 0x20], rax
movups xmm0, xmmword [r15]
movups xmmword [rsi + 8], xmm0
mov rax, qword [r15]
jmp 0x1400ada86
mov rdi, qword [rsp + 0x200]
cmp qword [rsp + 0x50], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x1f0]
cmp qword [rsp + 0x1f8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x1e0]
cmp qword [rsp + 0x1e8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x1c8]
cmp qword [rsp + 0x1d8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x1c0]
cmp qword [rsp + 0x1d0], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x1b0]
cmp qword [rsp + 0x1b8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x1a0]
cmp qword [rsp + 0x1a8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x190]
cmp qword [rsp + 0x198], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x180]
cmp qword [rsp + 0x188], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x170]
cmp qword [rsp + 0x178], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x160]
cmp qword [rsp + 0x168], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x150]
cmp qword [rsp + 0x158], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x140]
cmp qword [rsp + 0x148], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x130]
cmp qword [rsp + 0x138], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x120]
cmp qword [rsp + 0x128], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x110]
cmp qword [rsp + 0x118], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x100]
cmp qword [rsp + 0x108], 0
je 0x1400ae708
mov rdi, qword [rsp + 0xf0]
cmp qword [rsp + 0xf8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0xe0]
cmp qword [rsp + 0xe8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0xd0]
cmp qword [rsp + 0xd8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0xc0]
cmp qword [rsp + 0xc8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0xb0]
cmp qword [rsp + 0xb8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x88]
cmp qword [rsp + 0xa8], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x80]
cmp qword [rsp + 0xa0], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x78]
cmp qword [rsp + 0x98], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x70]
test r9, r9
je 0x1400ae708
mov rdi, qword [rsp + 0x68]
cmp qword [rsp + 0x90], 0
je 0x1400ae708
mov rdi, qword [rsp + 0x60]
test r8, r8
je 0x1400ae708
call fcn.140130d2c
mov ecx, dword [rax]
call fcn.140150b04
mov rsi, rax
call fcn.140130d2c
mov edi, dword [rax]
lea rcx, str....._third_partyperfettoincludeperfetto_tracing_track_event_interned_data_index.h
call fcn.14016d6d0
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], edi
lea rcx, str.PERFETTO_CHECK_false_
mov qword [rsp + 0x20], rcx
lea r9, str._s__errno:__d___s_
mov ecx, 3
mov rdx, rax
mov r8d, 0xfd
call fcn.14005c2f0
int3
mov ecx, 0x290
call fcn.140130ce8
test rax, rax
je 0x1400aeacc
mov qword [rax], rbp
mov dword [rax + 0x288], 0
mov qword [rsi], rax
xor ecx, ecx
mov rbp, rax
jmp 0x1400ada26
ud2
call fcn.14016cc10
and r11, rax
mov rdx, qword [r14]
mov qword [rdx + r11*8], r9
mov rdx, qword [r8]
test rdx, rdx
je 0x1400ae199
mov r12, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
mov r9, qword [rdx + 8]
and r9, rax
cmp r9, r11
je 0x1400aeb23
mov r10, qword [r14]
cmp qword [r10 + r9*8], 0
jne 0x1400aeb28
mov qword [r10 + r9*8], r8
mov r8, rdx
mov r11, r9
mov rdx, qword [r8]
test rdx, rdx
mov r10, rsi
jne 0x1400aeaf3
jmp 0x1400ae199
mov r8, rdx
jmp 0x1400aeb13
mov r10, qword [rdx]
mov qword [r8], r10
mov r10, qword [r14]
mov r10, qword [r10 + r9*8]
mov r10, qword [r10]
mov qword [rdx], r10
mov r10, qword [r14]
mov r9, qword [r10 + r9*8]
mov qword [r9], rdx
jmp 0x1400aeb13
mov r13, r15
jmp 0x1400ae061
call fcn.140130d2c
mov ecx, dword [rax]
call fcn.140150b04
mov rsi, rax
call fcn.140130d2c
mov edi, dword [rax]
lea rcx, str....._third_partyperfetto_srcprotozero_static_buffer.cc
call fcn.14016d6d0
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], edi
lea r9, str.Static_buffer_too_small__errno:__d___s_
mov ecx, 3
mov rdx, rax
mov r8d, 0x1d
call fcn.14005c2f0
int3
cmp r13, rdi
mov rcx, qword [rsp + 0x48]
mov r10, rsi
jae 0x1400ae199
mov rax, qword [r10 + 0x20]
test rax, rax
jns 0x1400aebc9
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
addss xmm0, xmm0
jmp 0x1400aebd1
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
divss xmm0, dword [rsi + 0x28]
call fcn.14014e408
cvttss2si rcx, xmm0
mov rdx, rcx
subss xmm0, dword [0x14020a4f8]
cvttss2si rax, xmm0
sar rdx, 0x3f
and rax, rdx
or rax, rcx
cmp rdi, 3
jb 0x1400aec84
mov rcx, rdi
shr rcx, 1
movabs rdx, 0x5555555555555555
and rdx, rcx
mov rcx, rdi
sub rcx, rdx
movabs rdx, 0x3333333333333333
mov r8, rcx
shr r8, 2
and rcx, rdx
and r8, rdx
add r8, rcx
mov rcx, r8
shr rcx, 4
add rcx, r8
movabs rdx, 0xf0f0f0f0f0f0f0f
and rdx, rcx
movabs rcx, 0x101010101010101
imul rcx, rdx
shr rcx, 0x38
cmp ecx, 1
ja 0x1400aec84
lea rcx, [rax - 1]
bsr rcx, rcx
xor ecx, 0x3f
neg cl
mov edx, 1
shl rdx, cl
cmp rax, 2
cmovb rdx, rax
jmp 0x1400aec8f
mov rcx, rax
call fcn.1401031b0
mov rdx, rax
cmp r13, rdx
cmova rdx, r13
cmp rdx, rdi
mov r12, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
mov r10, rsi
jae 0x1400ae199
mov rcx, r14
call fcn.140187100
mov r10, rsi
mov rcx, qword [rsp + 0x48]
jmp 0x1400ae199
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 1
call qword [0x14021e0b8]
jmp 0x1400ae752