Function at 0x1400a5750
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x158
mov r15, qword [rcx]
mov r12, qword [rcx + 8]
mov rax, r12
sub rax, r15
cmp rax, 2
jae 0x1400a578f
xor edi, edi
mov rax, rdi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rsi, rcx
movzx ecx, word [r15]
xor edi, edi
cmp ecx, 0x7367
setne cl
je 0x1400a57a8
xor r14d, r14d
jmp 0x1400a57be
add r15, 2
mov qword [rsi], r15
mov rax, r12
sub rax, r15
mov r14b, 1
cmp rax, 2
jb case.0x1400a58c3.10
mov dil, cl
movzx ecx, byte [r15]
mov r8d, 0x3d
xor edx, edx
lea rbp, [0x1400d1da0]
jmp 0x1400a57eb
inc r9
mov rdx, r9
cmp r8, rdx
je 0x1400a5824
lea r9, [rdx + r8]
shr r9, 1
mov r10, r9
shl r10, 4
movzx r11d, byte [r10 + rbp]
cmp cl, r11b
jg 0x1400a57e0
cmp cl, r11b
jne 0x1400a581c
movzx r10d, byte [r10 + rbp + 1]
cmp byte [r15 + 1], r10b
setg r10b
test r10b, 1
jne 0x1400a57e0
mov r8, r9
cmp r8, rdx
jne 0x1400a57eb
shl rdx, 4
cmp cl, byte [rdx + rbp]
jne 0x1400a5978
add rbp, rdx
movzx edx, byte [r15 + 1]
cmp dl, byte [rbp + 1]
jne 0x1400a5978
lea r13, [r15 + 2]
mov qword [rsi], r13
movzx ebx, byte [rbp + 2]
mov rdi, qword [rbp + 8]
mov qword [rsp + 0x48], rdi
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov qword [rsp + 0x50], rax
cmp ebx, 0xa
ja case.default.0x1400a58c3
cmp rax, 8
jb 0x1400a6b2c
movabs rcx, 0x726f74617265706f
cmp qword [rdi], rcx
jne 0x1400a6b2c
lea rcx, [rdi + 8]
mov qword [rsp + 0x48], rcx
mov rdx, rax
add rdx, 0xfffffffffffffff8
mov qword [rsp + 0x50], rdx
je case.default.0x1400a58c3
cmp byte [rcx], 0x20
jne case.default.0x1400a58c3
add rdi, 9
mov qword [rsp + 0x48], rdi
add rax, 0xfffffffffffffff7
mov qword [rsp + 0x50], rax
mov eax, ebx
lea rcx, [0x1400d5c1c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov ebp, dword [rbp + 4]
mov rcx, rsi
call fcn.1400a5750
test rax, rax
je case.0x1400a58c3.10
mov rbx, rax
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a5920
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a6b27
mov qword [rax], r14
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r14, rax
lea rax, [rcx + 0x30]
mov qword [r14 + 8], rax
lea rdi, [r14 + rcx]
add rdi, 0x10
mov byte [r14 + rcx + 0x18], 0x3e
mov eax, dword [r14 + rcx + 0x1c]
and ebp, 0x3f
and eax, 0xffffffc0
or eax, ebp
mov dword [r14 + rcx + 0x1c], eax
movzx eax, byte [r14 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r14 + rcx + 0x20], al
lea rax, [0x1400d2288]
mov qword [r14 + rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [r14 + rcx + 0x28], xmm0
mov qword [r14 + rcx + 0x38], rbx
jmp 0x1400a5778
cmp ecx, 0x66
je 0x1400a59a2
cmp ecx, 0x54
je 0x1400a59cb
cmp ecx, 0x4c
jne 0x1400a59e6
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a72a0
movzx ecx, byte [r15 + 1]
cmp cl, 0x70
jne 0x1400a5a75
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a7d70
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.1400a46d0
movzx eax, word [r15]
cmp eax, 0x6c69
je 0x1400a5aac
sub r12, r15
cmp r12, 2
jb 0x1400a5a0d
movzx eax, word [r15]
cmp eax, 0x636d
je 0x1400a5c5a
lea rax, [0x1400d1af1]
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], 2
lea rdx, [rsp + 0x110]
mov rcx, rsi
call fcn.14009fa20
test al, al
je 0x1400a5b8c
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x1400a58c3.10
mov dword [rsp + 0x58], 2
lea rdx, [rsp + 0x48]
lea r8, [rsp + 0x58]
mov rcx, rsi
call fcn.1400a8870
jmp 0x1400a6978
cmp rax, 3
jb 0x1400a5a91
cmp cl, 0x4c
jne 0x1400a5a91
movsx eax, byte [r15 + 2]
add eax, 0xffffffd0
cmp eax, 9
jbe 0x1400a59b0
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a80f0
add r15, 2
mov qword [rsi], r15
mov rbx, qword [rsi + 0x18]
sub rbx, qword [rsi + 0x10]
sar rbx, 3
lea r14, [rsi + 0x28]
xor edi, edi
jmp 0x1400a5b18
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a6b27
mov rax, r12
sar rax, 3
sar r12, 2
lea rbp, [rax*8]
add rbp, r13
mov qword [rsi + 0x18], rbp
lea rax, [r12*8]
add rax, r13
mov qword [rsi + 0x20], rax
lea rax, [rbp + 8]
mov qword [rsi + 0x18], rax
mov qword [rbp], r15
mov r15, qword [rsi]
mov r12, qword [rsi + 8]
cmp r15, r12
je 0x1400a5b27
cmp byte [r15], 0x45
je 0x1400a5bd6
mov rcx, rsi
call fcn.1400a8380
test rax, rax
je 0x1400a5778
mov r15, rax
mov rbp, qword [rsi + 0x18]
cmp rbp, qword [rsi + 0x20]
jne 0x1400a5b05
mov rcx, qword [rsi + 0x10]
mov r12, rbp
sub r12, rcx
lea rdx, [r12 + r12]
cmp rcx, r14
jne 0x1400a5ac7
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a6b27
mov r13, rax
cmp rbp, r14
je 0x1400a5b83
mov rcx, r13
mov rdx, r14
mov r8, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x1400a5adc
lea rax, [0x1400d1afe]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], 2
lea rdx, [rsp + 0x100]
mov rcx, rsi
call fcn.14009fa20
test al, al
je 0x1400a5bff
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a8950
inc r15
mov qword [rsi], r15
lea rdi, [rsp + 0x48]
mov rcx, rdi
mov rdx, rsi
mov r8, rbx
call fcn.1400a2700
mov rcx, rsi
mov rdx, rdi
call fcn.1400a8650
jmp 0x1400a6978
lea rax, [0x1400d1b01]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], 2
lea rdx, [rsp + 0xf0]
mov rcx, rsi
call fcn.14009fa20
test al, al
je 0x1400a6304
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x1400a58c3.10
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400a8d00
jmp 0x1400a6978
add r15, 2
mov qword [rsi], r15
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.1400a8700
cmp r13, r12
je 0x1400a62c5
cmp byte [r13], 0x5f
jne 0x1400a62c5
add r15, 3
mov qword [rsi], r15
movups xmm0, xmmword [rsp + 0x48]
movaps xmmword [rsp + 0x130], xmm0
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x68], eax
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x1400a58c3.10
lea rdx, [rsp + 0x130]
lea r8, [rsp + 0x58]
lea r9, [rsp + 0x68]
mov rcx, rsi
call fcn.1400a9d60
jmp 0x1400a6978
movups xmm0, xmmword [rsp + 0x48]
movaps xmmword [rsp + 0x140], xmm0
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x40], eax
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x1400a58c3.10
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x1400a58c3.10
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x58]
lea r8, [rsp + 0x140]
lea r9, [rsp + 0x68]
mov rcx, rsi
call fcn.1400a98c0
jmp 0x1400a6978
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x1400a58c3.10
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x1400a58c3.10
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x58]
lea r8, [rsp + 0x68]
lea r9, [rsp + 0x40]
mov rcx, rsi
call fcn.1400a6c40
jmp 0x1400a6978
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x1400a58c3.10
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x1400a58c3.10
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x40], eax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x58]
lea r8, [rsp + 0x48]
lea r9, [rsp + 0x68]
mov rcx, rsi
call fcn.1400a6d10
jmp 0x1400a6978
mov rax, qword [rsi + 0x18]
sub rax, qword [rsi + 0x10]
sar rax, 3
mov qword [rsp + 0x88], rax
lea rax, [rsi + 0x28]
mov qword [rsp + 0x78], rax
xor edi, edi
jmp 0x1400a5e7c
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a6b27
mov rax, rbx
sar rax, 3
sar rbx, 2
lea r12, [rax*8]
add r12, r13
mov qword [rsi + 0x18], r12
lea rax, [rbx*8]
add rax, r13
mov qword [rsi + 0x20], rax
lea rax, [r12 + 8]
mov qword [rsi + 0x18], rax
mov qword [r12], r15
mov r13, qword [rsi]
mov r12, qword [rsi + 8]
cmp r13, r12
je 0x1400a5e8c
cmp byte [r13], 0x5f
je 0x1400a6431
mov rcx, rsi
call fcn.1400a5750
test rax, rax
je 0x1400a5778
mov r15, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x1400a5e68
mov rcx, qword [rsi + 0x10]
mov rbx, r12
sub rbx, rcx
lea rdx, [rbx + rbx]
cmp rcx, qword [rsp + 0x78]
jne 0x1400a5e2a
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a6b27
mov r13, rax
mov rdx, qword [rsp + 0x78]
cmp r12, rdx
je 0x1400a5eec
mov rcx, r13
mov r8, rbx
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x1400a5e3f
mov rcx, rsi
call fcn.1400a5750
test rax, rax
je case.0x1400a58c3.10
mov rbx, rax
movzx r15d, byte [rbp + 3]
mov ebp, dword [rbp + 4]
mov r12, qword [rsi + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a5f56
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a6b27
mov qword [rax], r12
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r12, rax
and r15b, 1
lea rax, [rcx + 0x30]
mov qword [r12 + 8], rax
lea rdi, [r12 + rcx]
add rdi, 0x10
mov byte [r12 + rcx + 0x18], 0x3d
mov eax, dword [r12 + rcx + 0x1c]
and ebp, 0x3f
and eax, 0xffffffc0
or eax, ebp
mov dword [r12 + rcx + 0x1c], eax
movzx eax, byte [r12 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r12 + rcx + 0x20], al
lea rax, [0x1400d25b8]
mov qword [r12 + rcx + 0x10], rax
mov qword [r12 + rcx + 0x28], rbx
mov byte [r12 + rcx + 0x30], r14b
mov byte [r12 + rcx + 0x31], r15b
jmp 0x1400a5778
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x1400a58c3.10
mov rax, qword [rsi + 0x18]
sub rax, qword [rsi + 0x10]
sar rax, 3
mov qword [rsp + 0x78], rax
lea r14, [rsi + 0x28]
xor edi, edi
jmp 0x1400a602c
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a6b27
mov rax, rbx
sar rax, 3
sar rbx, 2
lea r12, [rax*8]
add r12, r13
mov qword [rsi + 0x18], r12
lea rax, [rbx*8]
add rax, r13
mov qword [rsi + 0x20], rax
lea rax, [r12 + 8]
mov qword [rsi + 0x18], rax
mov qword [r12], r15
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a603e
cmp byte [rax], 0x45
je 0x1400a65f3
mov rcx, rsi
call fcn.1400a5750
test rax, rax
je 0x1400a5778
mov r15, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x1400a601f
mov rcx, qword [rsi + 0x10]
mov rbx, r12
sub rbx, rcx
lea rdx, [rbx + rbx]
cmp rcx, r14
jne 0x1400a5fe1
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a6b27
mov r13, rax
cmp r12, r14
je 0x1400a609a
mov rcx, r13
mov rdx, r14
mov r8, rbx
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x1400a5ff6
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x1400a58c3.10
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x1400a58c3.10
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x40], rax
test rax, rax
je case.0x1400a58c3.10
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x84], eax
lea rax, [rsp + 0x84]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x58]
lea r8, [rsp + 0x68]
lea r9, [rsp + 0x40]
mov rcx, rsi
call fcn.1400a70d0
jmp 0x1400a6978
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x1400a58c3.10
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x1400a58c3.10
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x40], eax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x48]
lea r8, [rsp + 0x58]
lea r9, [rsp + 0x68]
mov rcx, rsi
call fcn.1400a71b0
jmp 0x1400a6978
test byte [rbp + 3], 1
jne 0x1400a6375
mov rcx, rsi
call fcn.1400a5750
jmp 0x1400a637d
movzx ebx, byte [rsi + 0x308]
mov byte [rsi + 0x308], 0
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x68], rax
mov byte [rsi + 0x308], bl
test rax, rax
je case.0x1400a58c3.10
mov rax, qword [rsi + 0x18]
sub rax, qword [rsi + 0x10]
sar rax, 3
mov qword [rsp + 0x78], rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
cmp rax, rcx
je 0x1400a668c
movzx edx, byte [rax]
cmp dl, 0x5f
mov byte [rsp + 0x88], dl
jne 0x1400a6650
inc rax
mov qword [rsi], rax
lea r14, [rsi + 0x28]
xor edi, edi
jmp 0x1400a6252
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a6b27
mov rax, rbx
sar rax, 3
sar rbx, 2
lea r12, [rax*8]
add r12, r13
mov qword [rsi + 0x18], r12
lea rax, [rbx*8]
add rax, r13
mov qword [rsi + 0x20], rax
lea rax, [r12 + 8]
mov qword [rsi + 0x18], rax
mov qword [r12], r15
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
cmp rax, rcx
je 0x1400a6260
cmp byte [rax], 0x45
je 0x1400a6655
mov rcx, rsi
call fcn.1400a5750
test rax, rax
je 0x1400a5778
mov r15, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x1400a623e
mov rcx, qword [rsi + 0x10]
mov rbx, r12
sub rbx, rcx
lea rdx, [rbx + rbx]
cmp rcx, r14
jne 0x1400a6200
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a6b27
mov r13, rax
cmp r12, r14
je 0x1400a62bc
mov rcx, r13
mov rdx, r14
mov r8, rbx
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x1400a6215
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x1400a58c3.10
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x68], eax
lea rdx, [rsp + 0x58]
lea r8, [rsp + 0x48]
lea r9, [rsp + 0x68]
mov rcx, rsi
call fcn.1400a6b60
jmp 0x1400a6978
lea rax, [0x1400d1b04]
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], 2
lea rdx, [rsp + 0xe0]
mov rcx, rsi
call fcn.14009fa20
test al, al
je 0x1400a656d
mov rax, qword [rsi]
cmp qword [rsi + 8], rax
je 0x1400a6635
cmp byte [rax], 0x54
jne 0x1400a6635
mov rcx, rsi
call fcn.1400a46d0
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x1400a58c3.10
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400a8da0
jmp 0x1400a6978
mov rcx, rsi
call fcn.1400a07c0
mov rbx, rax
test rax, rax
je case.0x1400a58c3.10
mov ebp, dword [rbp + 4]
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfb0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a63d0
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a6b27
mov qword [rax], r14
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r14, rax
lea rax, [rcx + 0x40]
mov qword [r14 + 8], rax
lea rdi, [r14 + rcx]
add rdi, 0x10
mov byte [r14 + rcx + 0x18], 0x38
mov eax, dword [r14 + rcx + 0x1c]
and ebp, 0x3f
and eax, 0xffffffc0
or eax, ebp
mov dword [r14 + rcx + 0x1c], eax
movzx eax, byte [r14 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r14 + rcx + 0x20], al
lea rax, [0x1400d28f8]
mov qword [r14 + rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [r14 + rcx + 0x28], xmm0
mov qword [r14 + rcx + 0x38], rbx
xorps xmm0, xmm0
movups xmmword [r14 + rcx + 0x40], xmm0
jmp 0x1400a5778
inc r13
mov qword [rsi], r13
lea rcx, [rsp + 0x58]
mov rdx, rsi
mov r8, qword [rsp + 0x88]
call fcn.1400a2700
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x40], rax
test rax, rax
je case.0x1400a58c3.10
lea rax, [0x1400d1ae8]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 2
lea rdx, [rsp + 0x120]
mov rcx, rsi
call fcn.14009fa20
mov rcx, qword [rsi + 0x18]
sub rcx, qword [rsi + 0x10]
mov qword [rsp + 0x88], rcx
test al, al
je 0x1400a677f
xor edi, edi
jmp 0x1400a64f2
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a6b27
mov rax, r12
sar rax, 3
sar r12, 2
lea rbx, [rax*8]
add rbx, r13
mov qword [rsi + 0x18], rbx
lea rax, [r12*8]
add rax, r13
mov qword [rsi + 0x20], rax
lea rax, [rbx + 8]
mov qword [rsi + 0x18], rax
mov qword [rbx], r15
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a6504
cmp byte [rax], 0x45
je 0x1400a6795
mov rcx, rsi
call fcn.1400a5750
test rax, rax
je 0x1400a5778
mov r15, rax
mov rbx, qword [rsi + 0x18]
cmp rbx, qword [rsi + 0x20]
jne 0x1400a64e7
mov rcx, qword [rsi + 0x10]
mov r12, rbx
sub r12, rcx
lea rdx, [r12 + r12]
cmp rcx, qword [rsp + 0x78]
jne 0x1400a64a9
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a6b27
mov r13, rax
mov rdx, qword [rsp + 0x78]
cmp rbx, rdx
je 0x1400a6564
mov rcx, r13
mov r8, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x1400a64be
lea rax, [0x1400d1b12]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], 2
lea rdx, [rsp + 0xd0]
mov rcx, rsi
call fcn.14009fa20
test al, al
je 0x1400a66e3
lea rbx, [rsi + 0x10]
mov rdi, qword [rsi + 0x18]
sub rdi, qword [rsi + 0x10]
sar rdi, 3
lea r14, [rsp + 0x48]
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a65c7
cmp byte [rax], 0x45
je 0x1400a684e
mov rcx, rsi
call fcn.1400a2320
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x1400a58c3.10
mov rcx, rbx
mov rdx, r14
call fcn.1400a25a0
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x1400a65be
jmp 0x1400a65c7
inc rax
mov qword [rsi], rax
lea rdi, [rsp + 0x58]
mov rcx, rdi
mov rdx, rsi
mov r8, qword [rsp + 0x78]
call fcn.1400a2700
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x68]
lea r9, [rsp + 0x40]
mov rcx, rsi
mov r8, rdi
call fcn.1400a6f10
jmp 0x1400a6978
mov rcx, rsi
call 0x1400a7d70
mov qword [rsp + 0x48], rax
test rax, rax
jne 0x1400a6877
jmp case.0x1400a58c3.10
cmp dl, 0x45
jne 0x1400a668c
inc rax
mov qword [rsi], rax
lea rcx, [rsp + 0x58]
mov rdx, rsi
mov r8, qword [rsp + 0x78]
call fcn.1400a2700
cmp byte [rsp + 0x88], 0x5f
je 0x1400a6954
cmp qword [rsp + 0x60], 1
jne case.0x1400a58c3.10
jmp 0x1400a6954
mov rcx, rsi
call fcn.1400a5750
test rax, rax
je case.0x1400a58c3.10
mov rdi, rax
mov r13, qword [rsi + 0x18]
cmp r13, qword [rsi + 0x20]
jne 0x1400a692a
lea r12, [rsi + 0x28]
mov rcx, qword [rsi + 0x10]
mov r14, r13
sub r14, rcx
lea rdx, [r14 + r14]
cmp rcx, r12
je 0x1400a68e4
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r15, rax
mov qword [rsi + 0x10], rax
test rax, rax
jne 0x1400a690f
jmp 0x1400a6b27
lea rax, [0x1400d1b15]
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], 2
lea rdx, [rsp + 0xc0]
mov rcx, rsi
call fcn.14009fa20
test al, al
je 0x1400a67fd
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x1400a58c3.10
lea rbx, [rsi + 0x10]
mov rdi, qword [rsi + 0x18]
sub rdi, qword [rsi + 0x10]
sar rdi, 3
lea r14, [rsp + 0x48]
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a6753
cmp byte [rax], 0x45
je 0x1400a6a35
mov rcx, rsi
call fcn.1400a8380
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x1400a58c3.10
mov rcx, rbx
mov rdx, r14
call fcn.1400a25a0
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x1400a674a
jmp 0x1400a6753
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je case.0x1400a58c3.10
cmp byte [rax], 0x45
jne case.0x1400a58c3.10
mov r8, qword [rsp + 0x88]
sar r8, 3
inc rax
mov qword [rsi], rax
lea rdi, [rsp + 0x68]
mov rcx, rdi
mov rdx, rsi
call fcn.1400a2700
movzx eax, byte [rbp + 3]
and al, 1
mov ecx, dword [rbp + 4]
shl ecx, 0x19
sar ecx, 0x19
mov dword [rsp + 0x84], ecx
lea rcx, [rsp + 0x84]
mov qword [rsp + 0x30], rcx
mov byte [rsp + 0x28], al
mov byte [rsp + 0x20], r14b
lea rdx, [rsp + 0x58]
lea r8, [rsp + 0x40]
mov rcx, rsi
mov r9, rdi
call fcn.1400a6e00
jmp 0x1400a6978
lea rax, [0x1400d1b18]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], 2
lea rdx, [rsp + 0xb0]
mov rcx, rsi
call fcn.14009fa20
test al, al
je 0x1400a6889
lea rdx, [0x1400d1b1b]
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a9070
inc rax
mov qword [rsi], rax
lea rbx, [rsp + 0x48]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.1400a2700
mov rcx, rsi
mov rdx, rbx
call fcn.1400a8f00
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400a8e40
jmp 0x1400a6978
lea rax, [0x1400d1b21]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], 2
lea rdx, [rsp + 0xa0]
mov rcx, rsi
call fcn.14009fa20
test al, al
je 0x1400a6980
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x1400a58c3.10
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400a9120
jmp 0x1400a6978
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a6b27
mov r15, rax
cmp r13, r12
je 0x1400a690b
mov rcx, r15
mov rdx, r12
mov r8, r14
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r15
mov rax, r14
sar rax, 3
sar r14, 2
lea r13, [r15 + rax*8]
mov qword [rsi + 0x18], r13
lea rax, [r15 + r14*8]
mov qword [rsi + 0x20], rax
lea rax, [r13 + 8]
mov qword [rsi + 0x18], rax
mov qword [r13], rdi
lea rcx, [rsp + 0x58]
mov rdx, rsi
mov r8, qword [rsp + 0x78]
call fcn.1400a2700
cmp qword [rsp + 0x60], 1
jne case.0x1400a58c3.10
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x68]
lea r8, [rsp + 0x58]
lea r9, [rsp + 0x40]
mov rcx, rsi
call fcn.1400a6ff0
mov rdi, rax
jmp 0x1400a5778
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a6a63
cmp byte [rax], 0x75
jne 0x1400a6a63
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a3990
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x1400a58c3.10
mov r8, qword [rax]
lea rcx, [rsp + 0x90]
mov rdx, rax
call qword [r8 + 0x30]
cmp qword [rsp + 0x98], 8
jne 0x1400a69ea
mov rax, qword [rsp + 0x90]
movabs rcx, 0x666f646975755f5f
cmp qword [rax], rcx
je 0x1400a6ac2
lea rbx, [rsi + 0x10]
mov rdi, qword [rsi + 0x18]
sub rdi, qword [rsi + 0x10]
lea r14, [rsp + 0x48]
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a6a09
cmp byte [rax], 0x45
je 0x1400a6a83
mov rcx, rsi
call fcn.1400a2320
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x1400a58c3.10
mov rcx, rbx
mov rdx, r14
call fcn.1400a25a0
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x1400a6a04
jmp 0x1400a6a09
inc rax
mov qword [rsi], rax
lea rbx, [rsp + 0x48]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.1400a2700
lea rdx, [rsp + 0x58]
mov rcx, rsi
mov r8, rbx
call fcn.1400a8fb0
jmp 0x1400a6978
test edi, edi
sete dl
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a91c0
inc rax
mov qword [rsi], rax
sar rdi, 3
lea rbx, [rsp + 0x48]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.1400a2700
mov dword [rsp + 0x40], 1
lea rdx, [rsp + 0x58]
lea r9, [rsp + 0x40]
mov rcx, rsi
mov r8, rbx
call fcn.1400a6f10
jmp 0x1400a6978
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a69ea
movzx ecx, byte [rax]
cmp ecx, 0x7a
je 0x1400a6af0
cmp ecx, 0x74
jne 0x1400a69ea
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a07c0
jmp 0x1400a6afe
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a5750
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x1400a58c3.10
lea rcx, [rsi + 0x10]
mov rdi, qword [rsi + 0x18]
sub rdi, qword [rsi + 0x10]
lea rdx, [rsp + 0x68]
call fcn.1400a25a0
jmp 0x1400a6a89
call fcn.140090390
lea rcx, str.starts_with_Res___operator_____operator_name_does_not_start_with_operator_
lea rdx, str.C:_M_B_src_libcxxabi_src_demangle_ItaniumDemangle.h
mov r8d, 0xa52
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
mov byte [rsi + 0x308], bl
mov rcx, rax
call fcn.14008e2d0
int3
jne case.0x1400a72f0.84
adc dh, al
or r11d, dword [rax]
and byte [r11 + r9 + 0x1c], 0xc0
push r14
push rsi
push rdi
push rbx
sub rsp, 0x38
mov rsi, rcx
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov rax, rcx
sub rax, rdx
cmp rax, 3
jae 0x1400a7d9a
cmp rax, 2
je 0x1400a7db5
jmp 0x1400a80d1
movzx eax, word [rdx]
xor eax, 0x7066
movzx r8d, byte [rdx + 2]
xor r8d, 0x54
or r8w, ax
je 0x1400a7f67
movzx eax, word [rdx]
cmp eax, 0x7066
je 0x1400a7ed4
movzx eax, word [rdx]
cmp eax, 0x4c66
jne 0x1400a80d1
add rdx, 2
mov qword [rsi], rdx
cmp rcx, rdx
je 0x1400a80d1
movsx eax, byte [rdx]
add eax, 0xffffffd0
cmp eax, 9
ja 0x1400a80d1
mov r8, rdx
nop word cs:[rax + rax]
movsx eax, byte [r8]
add eax, 0xffffffd0
cmp eax, 9
ja 0x1400a7e1a
inc r8
mov qword [rsi], r8
cmp r8, rcx
jne 0x1400a7e00
mov r8, rcx
xor eax, eax
cmp r8, rdx
je 0x1400a80d3
cmp r8, rcx
je 0x1400a80d3
cmp byte [r8], 0x70
jne 0x1400a80d1
lea rax, [r8 + 1]
mov qword [rsi], rax
cmp rax, rcx
je 0x1400a80a7
cmp byte [rax], 0x72
jne 0x1400a7e57
add r8, 2
mov qword [rsi], r8
mov rax, r8
cmp rax, rcx
je 0x1400a80a7
cmp byte [rax], 0x56
jne 0x1400a7e6b
inc rax
mov qword [rsi], rax
cmp rax, rcx
je 0x1400a80a7
cmp byte [rax], 0x4b
jne 0x1400a7e7f
inc rax
mov qword [rsi], rax
cmp rcx, rax
je 0x1400a80aa
movsx edx, byte [rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400a80aa
mov rdx, rax
mov r8, rax
movsx r9d, byte [r8]
add r9d, 0xffffffd0
cmp r9d, 9
ja 0x1400a7ebf
inc r8
mov qword [rsi], r8
inc rdx
cmp r8, rcx
jne 0x1400a7e9d
mov rdx, rcx
mov r8, rcx
sub rdx, rax
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rdx
mov rax, r8
jmp 0x1400a80b2
lea rdi, [rdx + 2]
mov qword [rsi], rdi
cmp rdi, rcx
je 0x1400a80d1
cmp byte [rdi], 0x72
jne 0x1400a7ef3
add rdx, 3
mov qword [rsi], rdx
mov rdi, rdx
cmp rdi, rcx
je 0x1400a80d1
cmp byte [rdi], 0x56
jne 0x1400a7f07
inc rdi
mov qword [rsi], rdi
cmp rdi, rcx
je 0x1400a80d1
cmp byte [rdi], 0x4b
jne 0x1400a7f1b
inc rdi
mov qword [rsi], rdi
cmp rcx, rdi
je 0x1400a80d1
movsx eax, byte [rdi]
add eax, 0xffffffd0
xor ebx, ebx
cmp eax, 9
ja 0x1400a8001
mov rbx, rdi
mov rax, rdi
nop dword [rax + rax]
movsx edx, byte [rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400a7f5f
inc rax
mov qword [rsi], rax
inc rbx
cmp rax, rcx
jne 0x1400a7f40
mov rbx, rcx
mov rax, rcx
sub rbx, rdi
jmp 0x1400a8006
add rdx, 3
mov qword [rsi], rdx
mov rdi, qword [rsi + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a7fb2
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a80dd
mov qword [rax], rdi
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov rdi, rax
lea rax, [rcx + 0x30]
mov qword [rdi + 8], rax
lea rax, [rdi + rcx]
add rax, 0x10
mov byte [rdi + rcx + 0x18], 7
and byte [rdi + rcx + 0x1c], 0xc0
movzx edx, byte [rdi + rcx + 0x20]
and dl, 0xc0
or dl, 0x15
mov byte [rdi + rcx + 0x20], dl
lea rdx, [0x1400d18c8]
mov qword [rdi + rcx + 0x10], rdx
lea rdx, str.this
mov qword [rdi + rcx + 0x28], rdx
mov qword [rdi + rcx + 0x30], 4
jmp 0x1400a80d3
mov rax, rdi
xor edi, edi
cmp rax, rcx
je 0x1400a80d1
cmp byte [rax], 0x5f
jne 0x1400a80d1
inc rax
mov qword [rsi], rax
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a8062
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a80dd
mov qword [rax], r14
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r14, rax
lea rax, [rcx + 0x30]
mov qword [r14 + 8], rax
lea rax, [r14 + rcx]
add rax, 0x10
mov byte [r14 + rcx + 0x18], 0x3f
and byte [r14 + rcx + 0x1c], 0xc0
movzx edx, byte [r14 + rcx + 0x20]
and dl, 0xc0
or dl, 0x15
mov byte [r14 + rcx + 0x20], dl
lea rdx, [0x1400d3558]
mov qword [r14 + rcx + 0x10], rdx
mov qword [r14 + rcx + 0x28], rdi
mov qword [r14 + rcx + 0x30], rbx
jmp 0x1400a80d3
mov rax, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x20], xmm0
cmp rax, rcx
je 0x1400a80d1
cmp byte [rax], 0x5f
jne 0x1400a80d1
inc rax
mov qword [rsi], rax
lea rdx, [rsp + 0x20]
mov rcx, rsi
call fcn.1400adba0
jmp 0x1400a80d3
xor eax, eax
add rsp, 0x38
pop rbx
pop rdi
pop rsi
pop r14
ret
call fcn.140090390
int3
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
cmp rax, rdx
je 0x1400a82b3
cmp byte [rax], 0x66
jne 0x1400a82b3
mov rsi, rcx
lea rcx, [rax + 1]
mov qword [rsi], rcx
cmp rdx, rcx
je 0x1400a82b3
movsx ecx, byte [rcx]
add ecx, 0xffffffb4
cmp ecx, 0x26
ja 0x1400a82b3
movabs r8, 0x4100000041
bt r8, rcx
jae 0x1400a82b3
movabs r8, 0x3fffffffbf
xor r14d, r14d
bt r8, rcx
setb r8b
movabs r15, 0x3effffffff
shr r15, cl
lea rcx, [rax + 2]
mov qword [rsi], rcx
sub rdx, rcx
cmp rdx, 2
jb 0x1400a82b3
mov r14b, r8b
movzx ecx, byte [rax + 2]
mov r8d, 0x3d
xor edx, edx
lea rbx, [0x1400d1da0]
jmp 0x1400a81ab
inc r9
mov rdx, r9
cmp r8, rdx
je 0x1400a81dd
lea r9, [rdx + r8]
shr r9, 1
mov r10, r9
shl r10, 4
cmp cl, byte [r10 + rbx]
jg 0x1400a81a0
jne 0x1400a81d5
movzx r10d, byte [r10 + rbx + 1]
cmp byte [rax + 3], r10b
setg r10b
test r10b, 1
jne 0x1400a81a0
mov r8, r9
cmp r8, rdx
jne 0x1400a81ab
shl rdx, 4
cmp cl, byte [rdx + rbx]
jne 0x1400a82b3
add rbx, rdx
movzx ecx, byte [rax + 3]
cmp cl, byte [rbx + 1]
jne 0x1400a82b3
add rax, 4
mov qword [rsi], rax
movzx eax, byte [rbx + 2]
cmp eax, 2
je 0x1400a822a
cmp eax, 4
jne 0x1400a82b3
mov rdi, qword [rbx + 8]
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
cmp byte [rax + rdi - 1], 0x2a
jne 0x1400a82b3
mov rcx, rsi
call fcn.1400a5750
test rax, rax
je 0x1400a82b3
mov rdi, rax
test r15b, 1
jne 0x1400a8245
xor r15d, r15d
jmp 0x1400a8266
mov rcx, rsi
call fcn.1400a5750
test rax, rax
je 0x1400a82b3
test r14, r14
mov rcx, rax
cmove rcx, rdi
mov r15, rdi
cmove r15, rax
mov rdi, rcx
mov rbx, qword [rbx + 8]
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
cmp rax, 8
jb 0x1400a835f
movabs rcx, 0x726f74617265706f
cmp qword [rbx], rcx
jne 0x1400a835f
lea r12, [rbx + 8]
mov r13, rax
add r13, 0xfffffffffffffff8
je 0x1400a82c5
cmp byte [r12], 0x20
jne 0x1400a82c8
add rbx, 9
add rax, 0xfffffffffffffff7
mov r13, rax
mov r12, rbx
jmp 0x1400a82c8
xor eax, eax
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor r13d, r13d
mov rbx, qword [rsi + 0x1330]
mov rcx, qword [rbx + 8]
lea rax, [rcx - 0xfb0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a830c
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a8379
mov qword [rax], rbx
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov rbx, rax
lea rax, [rcx + 0x40]
mov qword [rbx + 8], rax
mov byte [rbx + rcx + 0x18], 0x43
and byte [rbx + rcx + 0x1c], 0xc0
lea rax, [rbx + rcx]
add rax, 0x10
movzx edx, byte [rbx + rcx + 0x20]
and dl, 0xc0
or dl, 0x15
mov byte [rbx + rcx + 0x20], dl
lea rdx, [0x1400d3600]
mov qword [rbx + rcx + 0x10], rdx
mov qword [rbx + rcx + 0x28], rdi
mov qword [rbx + rcx + 0x30], r15
mov qword [rbx + rcx + 0x38], r12
mov qword [rbx + rcx + 0x40], r13
mov byte [rbx + rcx + 0x48], r14b
jmp 0x1400a82b5
lea rcx, str.starts_with_Res___operator_____operator_name_does_not_start_with_operator_
lea rdx, str.C:_M_B_src_libcxxabi_src_demangle_ItaniumDemangle.h
mov r8d, 0xa52
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
call fcn.140090390
int3
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
mov rbx, rcx
call fcn.1400a07c0
test rax, rax
je 0x1400a8ce2
mov rsi, rax
mov rcx, rbx
call fcn.1400a5750
test rax, rax
je 0x1400a8ce2
mov r9, qword [rbx]
mov rcx, qword [rbx + 8]
mov r8, r9
cmp r9, rcx
je 0x1400a89a4
cmp byte [r9], 0x6e
mov r8, r9
jne 0x1400a89a4
lea r8, [r9 + 1]
mov qword [rbx], r8
cmp rcx, r8
je 0x1400a8ce2
movsx edx, byte [r8]
add edx, 0xffffffd0
xor r10d, r10d
cmp edx, 9
ja 0x1400a89ea
nop dword [rax]
movsx edx, byte [r8]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400a89da
inc r8
mov qword [rbx], r8
cmp r8, rcx
jne 0x1400a89c0
mov r8, rcx
mov r10, r8
sub r10, r9
cmp r8, rcx
jne 0x1400a89f6
jmp 0x1400a8ce2
xor r9d, r9d
cmp r8, rcx
je 0x1400a8ce2
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rsi
mov rax, qword [rbx + 0x18]
sub rax, qword [rbx + 0x10]
sar rax, 3
mov qword [rsp + 0x40], rax
lea r9, [rbx + 0x28]
lea r12, [0x1400d18c8]
mov r14, r9
jmp 0x1400a8a94
lea rax, [r15 + 0x30]
mov qword [rsi + 8], rax
mov byte [rsi + r15 + 0x18], 7
and byte [rsi + r15 + 0x1c], 0xc0
movzx eax, byte [rsi + r15 + 0x20]
and al, 0xc0
or al, 0x15
mov byte [rsi + r15 + 0x20], al
mov qword [rsi + r15 + 0x10], r12
mov qword [rsi + r15 + 0x28], rbp
mov qword [rsi + r15 + 0x30], r13
mov r13, qword [rbx + 0x18]
cmp r13, qword [rbx + 0x20]
je 0x1400a8b60
lea rax, [rsi + r15]
add rax, 0x10
lea rcx, [r13 + 8]
mov qword [rbx + 0x18], rcx
mov qword [r13], rax
mov r8, qword [rbx]
mov rcx, qword [rbx + 8]
cmp r8, rcx
je 0x1400a8ce2
cmp byte [r8], 0x5f
jne 0x1400a8be7
inc r8
mov qword [rbx], r8
cmp rcx, r8
je 0x1400a8b00
movsx edx, byte [r8]
add edx, 0xffffffd0
mov ebp, 0
mov r13d, 0
cmp edx, 9
ja 0x1400a8b05
mov r13, r8
nop word cs:[rax + rax]
movsx edx, byte [r13]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400a8aeb
inc r13
mov qword [rbx], r13
cmp r13, rcx
jne 0x1400a8ad0
mov r13, rcx
sub r13, r8
mov rbp, r8
jmp 0x1400a8b05
xor ebp, ebp
xor r13d, r13d
mov rsi, qword [rbx + 0x1330]
mov r15, qword [rsi + 8]
lea rax, [r15 - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a8a30
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a8cf8
mov qword [rax], rsi
mov qword [rax + 8], 0
mov qword [rbx + 0x1330], rax
xor r15d, r15d
mov rsi, rax
mov r9, r14
jmp 0x1400a8a30
mov rcx, qword [rbx + 0x10]
mov rdi, r13
sub rdi, rcx
lea rdx, [rdi + rdi]
cmp rcx, r9
je 0x1400a8b8c
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov rbp, rax
mov qword [rbx + 0x10], rax
test rax, rax
mov r9, r14
jne 0x1400a8bbd
jmp 0x1400a8cf8
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a8cf8
mov rbp, rax
mov r9, r14
cmp r13, r14
je 0x1400a8bb9
mov rcx, rbp
mov rdx, r9
mov r8, rdi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov r9, r14
mov qword [rbx + 0x10], rbp
mov rax, rdi
sar rax, 3
sar rdi, 2
lea r13, [rax*8]
add r13, rbp
lea rax, [rdi*8]
add rax, rbp
mov qword [rbx + 0x20], rax
jmp 0x1400a8a70
cmp r8, rcx
je 0x1400a8c05
cmp byte [r8], 0x70
jne 0x1400a8c05
inc r8
mov qword [rbx], r8
mov sil, 1
cmp r8, rcx
jne 0x1400a8c10
jmp 0x1400a8ce2
xor esi, esi
cmp r8, rcx
je 0x1400a8ce2
cmp byte [r8], 0x45
jne 0x1400a8ce2
inc r8
mov qword [rbx], r8
lea rcx, [rsp + 0x48]
mov rdx, rbx
mov r8, qword [rsp + 0x40]
call fcn.1400a2700
mov rdi, qword [rbx + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfa0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a8c76
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a8cf8
mov qword [rax], rdi
mov qword [rax + 8], 0
mov qword [rbx + 0x1330], rax
xor ecx, ecx
mov rdi, rax
lea rax, [rcx + 0x50]
mov qword [rdi + 8], rax
lea rdx, [rdi + rcx]
add rdx, 0x10
mov byte [rdi + rcx + 0x18], 0x37
and byte [rdi + rcx + 0x1c], 0xc0
movzx eax, byte [rdi + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [rdi + rcx + 0x20], al
lea rax, [0x1400d3a08]
mov qword [rdi + rcx + 0x10], rax
mov rax, qword [rsp + 0x38]
mov qword [rdi + rcx + 0x28], rax
mov rax, qword [rsp + 0x30]
mov qword [rdi + rcx + 0x30], rax
mov rax, qword [rsp + 0x28]
mov qword [rdi + rcx + 0x38], rax
mov rax, qword [rsp + 0x20]
mov qword [rdi + rcx + 0x40], rax
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [rdi + rcx + 0x48], xmm0
mov byte [rdi + rcx + 0x58], sil
jmp 0x1400a8ce4
xor edx, edx
mov rax, rdx
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.140090390
int3
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
mov rsi, rdx
mov rbx, qword [rcx + 0x1330]
mov r14, qword [rbx + 8]
lea rax, [r14 - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a90c0
mov rdi, rcx
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a9118
mov qword [rax], rbx
mov qword [rax + 8], 0
mov qword [rdi + 0x1330], rax
xor r14d, r14d
mov rbx, rax
lea rax, [r14 + 0x30]
mov qword [rbx + 8], rax
lea rdi, [rbx + r14]
add rdi, 0x10
mov rcx, rsi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov byte [rbx + r14 + 0x18], 7
and byte [rbx + r14 + 0x1c], 0xc0
movzx ecx, byte [rbx + r14 + 0x20]
and cl, 0xc0
or cl, 0x15
mov byte [rbx + r14 + 0x20], cl
lea rcx, [0x1400d18c8]
mov qword [rbx + r14 + 0x10], rcx
mov qword [rbx + r14 + 0x28], rsi
mov qword [rbx + r14 + 0x30], rax
mov rax, rdi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret
call fcn.140090390
int3
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x20
mov ebx, edx
mov rsi, rcx
mov rax, qword [rcx]
mov rcx, qword [rcx + 8]
mov rdx, rcx
sub rdx, rax
cmp rdx, 3
jae 0x1400a91ef
cmp rdx, 2
je 0x1400a920b
jmp 0x1400a921a
movzx edx, word [rax]
xor edx, 0x7273
movzx r8d, byte [rax + 2]
xor r8d, 0x4e
or r8w, dx
je 0x1400a9452
movzx edx, word [rax]
cmp edx, 0x7273
je 0x1400a92b7
mov rcx, rsi
call fcn.1400af240
mov rdi, rax
test rax, rax
je 0x1400a98ad
test bl, bl
je 0x1400a98ad
mov rbx, qword [rsi + 0x1330]
mov rcx, qword [rbx + 8]
lea rax, [rcx - 0xfd0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a927a
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a95d6
mov qword [rax], rbx
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov rbx, rax
lea rax, [rcx + 0x20]
mov qword [rbx + 8], rax
mov byte [rbx + rcx + 0x18], 0x2a
and byte [rbx + rcx + 0x1c], 0xc0
movzx eax, byte [rbx + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [rbx + rcx + 0x20], al
lea rax, [0x1400d3fa0]
mov qword [rbx + rcx + 0x10], rax
mov qword [rbx + rcx + 0x28], rdi
lea rdi, [rbx + rcx]
add rdi, 0x10
jmp 0x1400a98ad
add rax, 2
mov qword [rsi], rax
cmp rcx, rax
je 0x1400a95db
movsx eax, byte [rax]
add eax, 0xffffffd0
cmp eax, 9
ja 0x1400a95db
mov rcx, rsi
call fcn.1400af150
test rax, rax
je 0x1400a98ab
mov r14, rax
xor edi, edi
test bl, bl
je 0x1400a973e
lea r15, [0x1400d3fa0]
lea r12, [0x1400d3cd0]
xor ebx, ebx
jmp 0x1400a932d
cmp byte [rax], 0x45
je 0x1400a980a
mov rcx, rsi
call fcn.1400af150
mov r14, rax
test rax, rax
je 0x1400a98ad
mov r13, qword [rsi + 0x1330]
mov rcx, qword [r13 + 8]
test rbx, rbx
je 0x1400a93cc
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a937a
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a95d6
mov qword [rax], r13
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r13, rax
lea rax, [rcx + 0x30]
mov qword [r13 + 8], rax
mov byte [r13 + rcx + 0x18], 0x16
and byte [r13 + rcx + 0x1c], 0xc0
movzx eax, byte [r13 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r13 + rcx + 0x20], al
mov qword [r13 + rcx + 0x10], r12
mov qword [r13 + rcx + 0x28], rbx
lea rbx, [rcx + r13]
add rbx, 0x10
lea rax, [rcx + r13]
add rax, 0x30
mov qword [rax], r14
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x1400a9310
jmp 0x1400a9319
lea rax, [rcx - 0xfd0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a9405
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a95d6
mov qword [rax], r13
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r13, rax
lea rax, [rcx + 0x20]
mov qword [r13 + 8], rax
mov byte [r13 + rcx + 0x18], 0x2a
and byte [r13 + rcx + 0x1c], 0xc0
lea rbx, [rcx + r13]
add rbx, 0x10
movzx eax, byte [r13 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r13 + rcx + 0x20], al
mov qword [r13 + rcx + 0x10], r15
lea rax, [rcx + r13]
add rax, 0x28
mov qword [rax], r14
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x1400a9310
jmp 0x1400a9319
add rax, 3
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400aefc0
test rax, rax
je 0x1400a98ab
mov rbx, rax
mov rax, qword [rsi]
cmp qword [rsi + 8], rax
je 0x1400a951c
cmp byte [rax], 0x49
jne 0x1400a951c
xor edi, edi
mov rcx, rsi
xor edx, edx
call fcn.1400a3eb0
test rax, rax
je 0x1400a98ad
mov r14, rax
mov rdi, qword [rsi + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a94df
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a95d6
mov qword [rax], rdi
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov rdi, rax
lea rax, [rcx + 0x30]
mov qword [rdi + 8], rax
mov byte [rdi + rcx + 0x18], 0x29
and byte [rdi + rcx + 0x1c], 0xc0
movzx eax, byte [rdi + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [rdi + rcx + 0x20], al
lea rax, [0x1400d4798]
mov qword [rdi + rcx + 0x10], rax
mov qword [rdi + rcx + 0x28], rbx
lea rbx, [rdi + rcx]
add rbx, 0x10
mov qword [rdi + rcx + 0x30], r14
xor edi, edi
lea r15, [0x1400d3cd0]
jmp 0x1400a9582
mov qword [rax], r12
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r12, rax
lea rax, [rcx + 0x30]
mov qword [r12 + 8], rax
mov byte [r12 + rcx + 0x18], 0x16
and byte [r12 + rcx + 0x1c], 0xc0
movzx eax, byte [r12 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r12 + rcx + 0x20], al
mov qword [r12 + rcx + 0x10], r15
mov qword [r12 + rcx + 0x28], rbx
lea rbx, [r12 + rcx]
add rbx, 0x10
mov qword [r12 + rcx + 0x30], r14
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a9594
cmp byte [rax], 0x45
je 0x1400a969f
mov rcx, rsi
call fcn.1400af150
test rax, rax
je 0x1400a98ad
mov r14, rax
mov r12, qword [rsi + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a9547
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
jne 0x1400a9530
call fcn.140090390
mov rcx, rsi
call fcn.1400aefc0
test rax, rax
je 0x1400a98ab
mov rbx, rax
mov rax, qword [rsi]
cmp qword [rsi + 8], rax
je 0x1400a9810
cmp byte [rax], 0x49
jne 0x1400a9810
xor edi, edi
mov rcx, rsi
xor edx, edx
call fcn.1400a3eb0
test rax, rax
je 0x1400a98ad
mov r14, rax
mov rdi, qword [rsi + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a965d
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a95d6
mov qword [rax], rdi
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov rdi, rax
lea rax, [rcx + 0x30]
mov qword [rdi + 8], rax
mov byte [rdi + rcx + 0x18], 0x29
and byte [rdi + rcx + 0x1c], 0xc0
movzx eax, byte [rdi + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [rdi + rcx + 0x20], al
lea rax, [0x1400d4798]
mov qword [rdi + rcx + 0x10], rax
mov qword [rdi + rcx + 0x28], rbx
lea rbx, [rdi + rcx]
add rbx, 0x10
mov qword [rdi + rcx + 0x30], r14
jmp 0x1400a9810
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400af240
test rax, rax
je 0x1400a98ab
mov r14, rax
mov r12, qword [rsi + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a96fe
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a95d6
mov qword [rax], r12
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r12, rax
lea rax, [rcx + 0x30]
mov qword [r12 + 8], rax
mov byte [r12 + rcx + 0x18], 0x16
and byte [r12 + rcx + 0x1c], 0xc0
lea rdi, [r12 + rcx]
add rdi, 0x10
movzx eax, byte [r12 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r12 + rcx + 0x20], al
mov qword [r12 + rcx + 0x10], r15
mov qword [r12 + rcx + 0x28], rbx
mov qword [r12 + rcx + 0x30], r14
jmp 0x1400a98ad
lea r15, [0x1400d3cd0]
xor ebx, ebx
jmp 0x1400a97ad
lea rax, [rcx + 0x30]
mov qword [r12 + 8], rax
mov byte [r12 + rcx + 0x18], 0x16
and byte [r12 + rcx + 0x1c], 0xc0
movzx eax, byte [r12 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r12 + rcx + 0x20], al
mov qword [r12 + rcx + 0x10], r15
mov qword [r12 + rcx + 0x28], rbx
lea rbx, [r12 + rcx]
add rbx, 0x10
mov qword [r12 + rcx + 0x30], r14
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a9799
cmp byte [rax], 0x45
je 0x1400a980a
mov rcx, rsi
call fcn.1400af150
mov r14, rax
test rax, rax
je 0x1400a98ad
test rbx, rbx
je 0x1400a97fc
mov r12, qword [rsi + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a9750
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a95d6
mov qword [rax], r12
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r12, rax
jmp 0x1400a9750
mov rbx, r14
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x1400a9794
jmp 0x1400a9799
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400af240
test rax, rax
je 0x1400a98ab
mov r14, rax
mov r15, qword [rsi + 0x1330]
mov rcx, qword [r15 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a9868
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a95d6
mov qword [rax], r15
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r15, rax
lea rax, [rcx + 0x30]
mov qword [r15 + 8], rax
lea rdi, [r15 + rcx]
add rdi, 0x10
mov byte [r15 + rcx + 0x18], 0x16
and byte [r15 + rcx + 0x1c], 0xc0
movzx eax, byte [r15 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r15 + rcx + 0x20], al
lea rax, [0x1400d3cd0]
mov qword [r15 + rcx + 0x10], rax
mov qword [r15 + rcx + 0x28], rbx
mov qword [r15 + rcx + 0x30], r14
jmp 0x1400a98ad
xor edi, edi
mov rax, rdi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret