Function at 0x14009f8b0
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 0x14009f8ef
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 0x14009f908
xor r14d, r14d
jmp 0x14009f91e
add r15, 2
mov qword [rsi], r15
mov rax, r12
sub rax, r15
mov r14b, 1
cmp rax, 2
jb case.0x14009fa23.10
mov dil, cl
movzx ecx, byte [r15]
mov r8d, 0x3d
xor edx, edx
lea rbp, [0x1400c9d60]
jmp 0x14009f94b
inc r9
mov rdx, r9
cmp r8, rdx
je 0x14009f984
lea r9, [rdx + r8]
shr r9, 1
mov r10, r9
shl r10, 4
movzx r11d, byte [r10 + rbp]
cmp cl, r11b
jg 0x14009f940
cmp cl, r11b
jne 0x14009f97c
movzx r10d, byte [r10 + rbp + 1]
cmp byte [r15 + 1], r10b
setg r10b
test r10b, 1
jne 0x14009f940
mov r8, r9
cmp r8, rdx
jne 0x14009f94b
shl rdx, 4
cmp cl, byte [rdx + rbp]
jne 0x14009fad8
add rbp, rdx
movzx edx, byte [r15 + 1]
cmp dl, byte [rbp + 1]
jne 0x14009fad8
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.0x14009fa23
cmp rax, 8
jb 0x1400a0c8c
movabs rcx, 0x726f74617265706f
cmp qword [rdi], rcx
jne 0x1400a0c8c
lea rcx, [rdi + 8]
mov qword [rsp + 0x48], rcx
mov rdx, rax
add rdx, 0xfffffffffffffff8
mov qword [rsp + 0x50], rdx
je case.default.0x14009fa23
cmp byte [rcx], 0x20
jne case.default.0x14009fa23
add rdi, 9
mov qword [rsp + 0x48], rdi
add rax, 0xfffffffffffffff7
mov qword [rsp + 0x50], rax
mov eax, ebx
lea rcx, [0x1400cdbdc]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov ebp, dword [rbp + 4]
mov rcx, rsi
call fcn.14009f8b0
test rax, rax
je case.0x14009fa23.10
mov rbx, rax
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14009fa80
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0c87
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, [0x1400ca248]
mov qword [r14 + rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [r14 + rcx + 0x28], xmm0
mov qword [r14 + rcx + 0x38], rbx
jmp 0x14009f8d8
cmp ecx, 0x66
je 0x14009fb02
cmp ecx, 0x54
je 0x14009fb2b
cmp ecx, 0x4c
jne 0x14009fb46
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a1400
movzx ecx, byte [r15 + 1]
cmp cl, 0x70
jne 0x14009fbd5
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a1ed0
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.14009e830
movzx eax, word [r15]
cmp eax, 0x6c69
je 0x14009fc0c
sub r12, r15
cmp r12, 2
jb 0x14009fb6d
movzx eax, word [r15]
cmp eax, 0x636d
je 0x14009fdba
lea rax, [0x1400c9ab1]
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], 2
lea rdx, [rsp + 0x110]
mov rcx, rsi
call fcn.140099b80
test al, al
je 0x14009fcec
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x14009fa23.10
mov dword [rsp + 0x58], 2
lea rdx, [rsp + 0x48]
lea r8, [rsp + 0x58]
mov rcx, rsi
call fcn.1400a29d0
jmp 0x1400a0ad8
cmp rax, 3
jb 0x14009fbf1
cmp cl, 0x4c
jne 0x14009fbf1
movsx eax, byte [r15 + 2]
add eax, 0xffffffd0
cmp eax, 9
jbe 0x14009fb10
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a2250
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 0x14009fc78
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a0c87
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 0x14009fc87
cmp byte [r15], 0x45
je 0x14009fd36
mov rcx, rsi
call fcn.1400a24e0
test rax, rax
je 0x14009f8d8
mov r15, rax
mov rbp, qword [rsi + 0x18]
cmp rbp, qword [rsi + 0x20]
jne 0x14009fc65
mov rcx, qword [rsi + 0x10]
mov r12, rbp
sub r12, rcx
lea rdx, [r12 + r12]
cmp rcx, r14
jne 0x14009fc27
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0c87
mov r13, rax
cmp rbp, r14
je 0x14009fce3
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 0x14009fc3c
lea rax, [0x1400c9abe]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], 2
lea rdx, [rsp + 0x100]
mov rcx, rsi
call fcn.140099b80
test al, al
je 0x14009fd5f
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a2ab0
inc r15
mov qword [rsi], r15
lea rdi, [rsp + 0x48]
mov rcx, rdi
mov rdx, rsi
mov r8, rbx
call fcn.14009c860
mov rcx, rsi
mov rdx, rdi
call fcn.1400a27b0
jmp 0x1400a0ad8
lea rax, [0x1400c9ac1]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], 2
lea rdx, [rsp + 0xf0]
mov rcx, rsi
call fcn.140099b80
test al, al
je 0x1400a0464
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x14009fa23.10
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400a2e60
jmp 0x1400a0ad8
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.1400a2860
cmp r13, r12
je 0x1400a0425
cmp byte [r13], 0x5f
jne 0x1400a0425
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.14009f8b0
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x14009fa23.10
lea rdx, [rsp + 0x130]
lea r8, [rsp + 0x58]
lea r9, [rsp + 0x68]
mov rcx, rsi
call fcn.1400a3ec0
jmp 0x1400a0ad8
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.14009f8b0
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x14009fa23.10
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x14009fa23.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.1400a3a20
jmp 0x1400a0ad8
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x14009fa23.10
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x14009fa23.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.1400a0da0
jmp 0x1400a0ad8
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x14009fa23.10
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x14009fa23.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.1400a0e70
jmp 0x1400a0ad8
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 0x14009ffdc
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a0c87
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 0x14009ffec
cmp byte [r13], 0x5f
je 0x1400a0591
mov rcx, rsi
call fcn.14009f8b0
test rax, rax
je 0x14009f8d8
mov r15, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x14009ffc8
mov rcx, qword [rsi + 0x10]
mov rbx, r12
sub rbx, rcx
lea rdx, [rbx + rbx]
cmp rcx, qword [rsp + 0x78]
jne 0x14009ff8a
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0c87
mov r13, rax
mov rdx, qword [rsp + 0x78]
cmp r12, rdx
je 0x1400a004c
mov rcx, r13
mov r8, rbx
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x14009ff9f
mov rcx, rsi
call fcn.14009f8b0
test rax, rax
je case.0x14009fa23.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 0x1400a00b6
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0c87
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, [0x1400ca578]
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 0x14009f8d8
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x14009fa23.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 0x1400a018c
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a0c87
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 0x1400a019e
cmp byte [rax], 0x45
je 0x1400a0753
mov rcx, rsi
call fcn.14009f8b0
test rax, rax
je 0x14009f8d8
mov r15, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x1400a017f
mov rcx, qword [rsi + 0x10]
mov rbx, r12
sub rbx, rcx
lea rdx, [rbx + rbx]
cmp rcx, r14
jne 0x1400a0141
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0c87
mov r13, rax
cmp r12, r14
je 0x1400a01fa
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 0x1400a0156
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x14009fa23.10
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x14009fa23.10
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x40], rax
test rax, rax
je case.0x14009fa23.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.1400a1230
jmp 0x1400a0ad8
mov rcx, rsi
call fcn.14009a920
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x14009fa23.10
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x14009fa23.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.1400a1310
jmp 0x1400a0ad8
test byte [rbp + 3], 1
jne 0x1400a04d5
mov rcx, rsi
call fcn.14009f8b0
jmp 0x1400a04dd
movzx ebx, byte [rsi + 0x308]
mov byte [rsi + 0x308], 0
mov rcx, rsi
call fcn.14009a920
mov qword [rsp + 0x68], rax
mov byte [rsi + 0x308], bl
test rax, rax
je case.0x14009fa23.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 0x1400a07ec
movzx edx, byte [rax]
cmp dl, 0x5f
mov byte [rsp + 0x88], dl
jne 0x1400a07b0
inc rax
mov qword [rsi], rax
lea r14, [rsi + 0x28]
xor edi, edi
jmp 0x1400a03b2
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a0c87
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 0x1400a03c0
cmp byte [rax], 0x45
je 0x1400a07b5
mov rcx, rsi
call fcn.14009f8b0
test rax, rax
je 0x14009f8d8
mov r15, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x1400a039e
mov rcx, qword [rsi + 0x10]
mov rbx, r12
sub rbx, rcx
lea rdx, [rbx + rbx]
cmp rcx, r14
jne 0x1400a0360
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0c87
mov r13, rax
cmp r12, r14
je 0x1400a041c
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 0x1400a0375
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x14009fa23.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.1400a0cc0
jmp 0x1400a0ad8
lea rax, [0x1400c9ac4]
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], 2
lea rdx, [rsp + 0xe0]
mov rcx, rsi
call fcn.140099b80
test al, al
je 0x1400a06cd
mov rax, qword [rsi]
cmp qword [rsi + 8], rax
je 0x1400a0795
cmp byte [rax], 0x54
jne 0x1400a0795
mov rcx, rsi
call fcn.14009e830
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x14009fa23.10
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400a2f00
jmp 0x1400a0ad8
mov rcx, rsi
call fcn.14009a920
mov rbx, rax
test rax, rax
je case.0x14009fa23.10
mov ebp, dword [rbp + 4]
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfb0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a0530
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0c87
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, [0x1400ca8b8]
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 0x14009f8d8
inc r13
mov qword [rsi], r13
lea rcx, [rsp + 0x58]
mov rdx, rsi
mov r8, qword [rsp + 0x88]
call fcn.14009c860
mov rcx, rsi
call fcn.14009a920
mov qword [rsp + 0x40], rax
test rax, rax
je case.0x14009fa23.10
lea rax, [0x1400c9aa8]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 2
lea rdx, [rsp + 0x120]
mov rcx, rsi
call fcn.140099b80
mov rcx, qword [rsi + 0x18]
sub rcx, qword [rsi + 0x10]
mov qword [rsp + 0x88], rcx
test al, al
je 0x1400a08df
xor edi, edi
jmp 0x1400a0652
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a0c87
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 0x1400a0664
cmp byte [rax], 0x45
je 0x1400a08f5
mov rcx, rsi
call fcn.14009f8b0
test rax, rax
je 0x14009f8d8
mov r15, rax
mov rbx, qword [rsi + 0x18]
cmp rbx, qword [rsi + 0x20]
jne 0x1400a0647
mov rcx, qword [rsi + 0x10]
mov r12, rbx
sub r12, rcx
lea rdx, [r12 + r12]
cmp rcx, qword [rsp + 0x78]
jne 0x1400a0609
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0c87
mov r13, rax
mov rdx, qword [rsp + 0x78]
cmp rbx, rdx
je 0x1400a06c4
mov rcx, r13
mov r8, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x1400a061e
lea rax, [0x1400c9ad2]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], 2
lea rdx, [rsp + 0xd0]
mov rcx, rsi
call fcn.140099b80
test al, al
je 0x1400a0843
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 0x1400a0727
cmp byte [rax], 0x45
je 0x1400a09ae
mov rcx, rsi
call fcn.14009c480
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x14009fa23.10
mov rcx, rbx
mov rdx, r14
call fcn.14009c700
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x1400a071e
jmp 0x1400a0727
inc rax
mov qword [rsi], rax
lea rdi, [rsp + 0x58]
mov rcx, rdi
mov rdx, rsi
mov r8, qword [rsp + 0x78]
call fcn.14009c860
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.1400a1070
jmp 0x1400a0ad8
mov rcx, rsi
call 0x1400a1ed0
mov qword [rsp + 0x48], rax
test rax, rax
jne 0x1400a09d7
jmp case.0x14009fa23.10
cmp dl, 0x45
jne 0x1400a07ec
inc rax
mov qword [rsi], rax
lea rcx, [rsp + 0x58]
mov rdx, rsi
mov r8, qword [rsp + 0x78]
call fcn.14009c860
cmp byte [rsp + 0x88], 0x5f
je 0x1400a0ab4
cmp qword [rsp + 0x60], 1
jne case.0x14009fa23.10
jmp 0x1400a0ab4
mov rcx, rsi
call fcn.14009f8b0
test rax, rax
je case.0x14009fa23.10
mov rdi, rax
mov r13, qword [rsi + 0x18]
cmp r13, qword [rsi + 0x20]
jne 0x1400a0a8a
lea r12, [rsi + 0x28]
mov rcx, qword [rsi + 0x10]
mov r14, r13
sub r14, rcx
lea rdx, [r14 + r14]
cmp rcx, r12
je 0x1400a0a44
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r15, rax
mov qword [rsi + 0x10], rax
test rax, rax
jne 0x1400a0a6f
jmp 0x1400a0c87
lea rax, [0x1400c9ad5]
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], 2
lea rdx, [rsp + 0xc0]
mov rcx, rsi
call fcn.140099b80
test al, al
je 0x1400a095d
mov rcx, rsi
call fcn.14009a920
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x14009fa23.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 0x1400a08b3
cmp byte [rax], 0x45
je 0x1400a0b95
mov rcx, rsi
call fcn.1400a24e0
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x14009fa23.10
mov rcx, rbx
mov rdx, r14
call fcn.14009c700
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x1400a08aa
jmp 0x1400a08b3
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je case.0x14009fa23.10
cmp byte [rax], 0x45
jne case.0x14009fa23.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.14009c860
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.1400a0f60
jmp 0x1400a0ad8
lea rax, [0x1400c9ad8]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], 2
lea rdx, [rsp + 0xb0]
mov rcx, rsi
call fcn.140099b80
test al, al
je 0x1400a09e9
lea rdx, [0x1400c9adb]
mov rcx, rsi
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x1400a31d0
inc rax
mov qword [rsi], rax
lea rbx, [rsp + 0x48]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.14009c860
mov rcx, rsi
mov rdx, rbx
call fcn.1400a3060
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400a2fa0
jmp 0x1400a0ad8
lea rax, [0x1400c9ae1]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], 2
lea rdx, [rsp + 0xa0]
mov rcx, rsi
call fcn.140099b80
test al, al
je 0x1400a0ae0
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x14009fa23.10
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400a3280
jmp 0x1400a0ad8
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0c87
mov r15, rax
cmp r13, r12
je 0x1400a0a6b
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.14009c860
cmp qword [rsp + 0x60], 1
jne case.0x14009fa23.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.1400a1150
mov rdi, rax
jmp 0x14009f8d8
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a0bc3
cmp byte [rax], 0x75
jne 0x1400a0bc3
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.14009daf0
mov qword [rsp + 0x58], rax
test rax, rax
je case.0x14009fa23.10
mov r8, qword [rax]
lea rcx, [rsp + 0x90]
mov rdx, rax
call qword [r8 + 0x30]
cmp qword [rsp + 0x98], 8
jne 0x1400a0b4a
mov rax, qword [rsp + 0x90]
movabs rcx, 0x666f646975755f5f
cmp qword [rax], rcx
je 0x1400a0c22
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 0x1400a0b69
cmp byte [rax], 0x45
je 0x1400a0be3
mov rcx, rsi
call fcn.14009c480
mov qword [rsp + 0x48], rax
test rax, rax
je case.0x14009fa23.10
mov rcx, rbx
mov rdx, r14
call fcn.14009c700
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x1400a0b64
jmp 0x1400a0b69
inc rax
mov qword [rsi], rax
lea rbx, [rsp + 0x48]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.14009c860
lea rdx, [rsp + 0x58]
mov rcx, rsi
mov r8, rbx
call fcn.1400a3110
jmp 0x1400a0ad8
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 0x1400a3320
inc rax
mov qword [rsi], rax
sar rdi, 3
lea rbx, [rsp + 0x48]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.14009c860
mov dword [rsp + 0x40], 1
lea rdx, [rsp + 0x58]
lea r9, [rsp + 0x40]
mov rcx, rsi
mov r8, rbx
call fcn.1400a1070
jmp 0x1400a0ad8
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a0b4a
movzx ecx, byte [rax]
cmp ecx, 0x7a
je 0x1400a0c50
cmp ecx, 0x74
jne 0x1400a0b4a
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.14009a920
jmp 0x1400a0c5e
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.14009f8b0
mov qword [rsp + 0x68], rax
test rax, rax
je case.0x14009fa23.10
lea rcx, [rsi + 0x10]
mov rdi, qword [rsi + 0x18]
sub rdi, qword [rsi + 0x10]
lea rdx, [rsp + 0x68]
call fcn.14009c700
jmp 0x1400a0be9
call fcn.14008a4f0
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.140088430
int3
jne case.0x1400a1450.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 0x1400a1efa
cmp rax, 2
je 0x1400a1f15
jmp 0x1400a2231
movzx eax, word [rdx]
xor eax, 0x7066
movzx r8d, byte [rdx + 2]
xor r8d, 0x54
or r8w, ax
je 0x1400a20c7
movzx eax, word [rdx]
cmp eax, 0x7066
je 0x1400a2034
movzx eax, word [rdx]
cmp eax, 0x4c66
jne 0x1400a2231
add rdx, 2
mov qword [rsi], rdx
cmp rcx, rdx
je 0x1400a2231
movsx eax, byte [rdx]
add eax, 0xffffffd0
cmp eax, 9
ja 0x1400a2231
mov r8, rdx
nop word cs:[rax + rax]
movsx eax, byte [r8]
add eax, 0xffffffd0
cmp eax, 9
ja 0x1400a1f7a
inc r8
mov qword [rsi], r8
cmp r8, rcx
jne 0x1400a1f60
mov r8, rcx
xor eax, eax
cmp r8, rdx
je 0x1400a2233
cmp r8, rcx
je 0x1400a2233
cmp byte [r8], 0x70
jne 0x1400a2231
lea rax, [r8 + 1]
mov qword [rsi], rax
cmp rax, rcx
je 0x1400a2207
cmp byte [rax], 0x72
jne 0x1400a1fb7
add r8, 2
mov qword [rsi], r8
mov rax, r8
cmp rax, rcx
je 0x1400a2207
cmp byte [rax], 0x56
jne 0x1400a1fcb
inc rax
mov qword [rsi], rax
cmp rax, rcx
je 0x1400a2207
cmp byte [rax], 0x4b
jne 0x1400a1fdf
inc rax
mov qword [rsi], rax
cmp rcx, rax
je 0x1400a220a
movsx edx, byte [rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400a220a
mov rdx, rax
mov r8, rax
movsx r9d, byte [r8]
add r9d, 0xffffffd0
cmp r9d, 9
ja 0x1400a201f
inc r8
mov qword [rsi], r8
inc rdx
cmp r8, rcx
jne 0x1400a1ffd
mov rdx, rcx
mov r8, rcx
sub rdx, rax
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rdx
mov rax, r8
jmp 0x1400a2212
lea rdi, [rdx + 2]
mov qword [rsi], rdi
cmp rdi, rcx
je 0x1400a2231
cmp byte [rdi], 0x72
jne 0x1400a2053
add rdx, 3
mov qword [rsi], rdx
mov rdi, rdx
cmp rdi, rcx
je 0x1400a2231
cmp byte [rdi], 0x56
jne 0x1400a2067
inc rdi
mov qword [rsi], rdi
cmp rdi, rcx
je 0x1400a2231
cmp byte [rdi], 0x4b
jne 0x1400a207b
inc rdi
mov qword [rsi], rdi
cmp rcx, rdi
je 0x1400a2231
movsx eax, byte [rdi]
add eax, 0xffffffd0
xor ebx, ebx
cmp eax, 9
ja 0x1400a2161
mov rbx, rdi
mov rax, rdi
nop dword [rax + rax]
movsx edx, byte [rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400a20bf
inc rax
mov qword [rsi], rax
inc rbx
cmp rax, rcx
jne 0x1400a20a0
mov rbx, rcx
mov rax, rcx
sub rbx, rdi
jmp 0x1400a2166
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 0x1400a2112
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a223d
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, [0x1400c9888]
mov qword [rdi + rcx + 0x10], rdx
lea rdx, str.this
mov qword [rdi + rcx + 0x28], rdx
mov qword [rdi + rcx + 0x30], 4
jmp 0x1400a2233
mov rax, rdi
xor edi, edi
cmp rax, rcx
je 0x1400a2231
cmp byte [rax], 0x5f
jne 0x1400a2231
inc rax
mov qword [rsi], rax
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a21c2
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a223d
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, [0x1400cb518]
mov qword [r14 + rcx + 0x10], rdx
mov qword [r14 + rcx + 0x28], rdi
mov qword [r14 + rcx + 0x30], rbx
jmp 0x1400a2233
mov rax, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x20], xmm0
cmp rax, rcx
je 0x1400a2231
cmp byte [rax], 0x5f
jne 0x1400a2231
inc rax
mov qword [rsi], rax
lea rdx, [rsp + 0x20]
mov rcx, rsi
call fcn.1400a7d00
jmp 0x1400a2233
xor eax, eax
add rsp, 0x38
pop rbx
pop rdi
pop rsi
pop r14
ret
call fcn.14008a4f0
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 0x1400a2413
cmp byte [rax], 0x66
jne 0x1400a2413
mov rsi, rcx
lea rcx, [rax + 1]
mov qword [rsi], rcx
cmp rdx, rcx
je 0x1400a2413
movsx ecx, byte [rcx]
add ecx, 0xffffffb4
cmp ecx, 0x26
ja 0x1400a2413
movabs r8, 0x4100000041
bt r8, rcx
jae 0x1400a2413
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 0x1400a2413
mov r14b, r8b
movzx ecx, byte [rax + 2]
mov r8d, 0x3d
xor edx, edx
lea rbx, [0x1400c9d60]
jmp 0x1400a230b
inc r9
mov rdx, r9
cmp r8, rdx
je 0x1400a233d
lea r9, [rdx + r8]
shr r9, 1
mov r10, r9
shl r10, 4
cmp cl, byte [r10 + rbx]
jg 0x1400a2300
jne 0x1400a2335
movzx r10d, byte [r10 + rbx + 1]
cmp byte [rax + 3], r10b
setg r10b
test r10b, 1
jne 0x1400a2300
mov r8, r9
cmp r8, rdx
jne 0x1400a230b
shl rdx, 4
cmp cl, byte [rdx + rbx]
jne 0x1400a2413
add rbx, rdx
movzx ecx, byte [rax + 3]
cmp cl, byte [rbx + 1]
jne 0x1400a2413
add rax, 4
mov qword [rsi], rax
movzx eax, byte [rbx + 2]
cmp eax, 2
je 0x1400a238a
cmp eax, 4
jne 0x1400a2413
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 0x1400a2413
mov rcx, rsi
call fcn.14009f8b0
test rax, rax
je 0x1400a2413
mov rdi, rax
test r15b, 1
jne 0x1400a23a5
xor r15d, r15d
jmp 0x1400a23c6
mov rcx, rsi
call fcn.14009f8b0
test rax, rax
je 0x1400a2413
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 0x1400a24bf
movabs rcx, 0x726f74617265706f
cmp qword [rbx], rcx
jne 0x1400a24bf
lea r12, [rbx + 8]
mov r13, rax
add r13, 0xfffffffffffffff8
je 0x1400a2425
cmp byte [r12], 0x20
jne 0x1400a2428
add rbx, 9
add rax, 0xfffffffffffffff7
mov r13, rax
mov r12, rbx
jmp 0x1400a2428
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 0x1400a246c
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a24d9
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, [0x1400cb5c0]
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 0x1400a2415
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.14008a4f0
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.14009a920
test rax, rax
je 0x1400a2e42
mov rsi, rax
mov rcx, rbx
call fcn.14009f8b0
test rax, rax
je 0x1400a2e42
mov r9, qword [rbx]
mov rcx, qword [rbx + 8]
mov r8, r9
cmp r9, rcx
je 0x1400a2b04
cmp byte [r9], 0x6e
mov r8, r9
jne 0x1400a2b04
lea r8, [r9 + 1]
mov qword [rbx], r8
cmp rcx, r8
je 0x1400a2e42
movsx edx, byte [r8]
add edx, 0xffffffd0
xor r10d, r10d
cmp edx, 9
ja 0x1400a2b4a
nop dword [rax]
movsx edx, byte [r8]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400a2b3a
inc r8
mov qword [rbx], r8
cmp r8, rcx
jne 0x1400a2b20
mov r8, rcx
mov r10, r8
sub r10, r9
cmp r8, rcx
jne 0x1400a2b56
jmp 0x1400a2e42
xor r9d, r9d
cmp r8, rcx
je 0x1400a2e42
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, [0x1400c9888]
mov r14, r9
jmp 0x1400a2bf4
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 0x1400a2cc0
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 0x1400a2e42
cmp byte [r8], 0x5f
jne 0x1400a2d47
inc r8
mov qword [rbx], r8
cmp rcx, r8
je 0x1400a2c60
movsx edx, byte [r8]
add edx, 0xffffffd0
mov ebp, 0
mov r13d, 0
cmp edx, 9
ja 0x1400a2c65
mov r13, r8
nop word cs:[rax + rax]
movsx edx, byte [r13]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400a2c4b
inc r13
mov qword [rbx], r13
cmp r13, rcx
jne 0x1400a2c30
mov r13, rcx
sub r13, r8
mov rbp, r8
jmp 0x1400a2c65
xor ebp, ebp
xor r13d, r13d
mov rsi, qword [rbx + 0x1330]
mov r15, qword [rsi + 8]
lea rax, [r15 - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a2b90
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a2e58
mov qword [rax], rsi
mov qword [rax + 8], 0
mov qword [rbx + 0x1330], rax
xor r15d, r15d
mov rsi, rax
mov r9, r14
jmp 0x1400a2b90
mov rcx, qword [rbx + 0x10]
mov rdi, r13
sub rdi, rcx
lea rdx, [rdi + rdi]
cmp rcx, r9
je 0x1400a2cec
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 0x1400a2d1d
jmp 0x1400a2e58
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a2e58
mov rbp, rax
mov r9, r14
cmp r13, r14
je 0x1400a2d19
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 0x1400a2bd0
cmp r8, rcx
je 0x1400a2d65
cmp byte [r8], 0x70
jne 0x1400a2d65
inc r8
mov qword [rbx], r8
mov sil, 1
cmp r8, rcx
jne 0x1400a2d70
jmp 0x1400a2e42
xor esi, esi
cmp r8, rcx
je 0x1400a2e42
cmp byte [r8], 0x45
jne 0x1400a2e42
inc r8
mov qword [rbx], r8
lea rcx, [rsp + 0x48]
mov rdx, rbx
mov r8, qword [rsp + 0x40]
call fcn.14009c860
mov rdi, qword [rbx + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfa0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a2dd6
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a2e58
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, [0x1400cb9c8]
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 0x1400a2e44
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.14008a4f0
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 0x1400a3220
mov rdi, rcx
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a3278
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, [0x1400c9888]
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.14008a4f0
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 0x1400a334f
cmp rdx, 2
je 0x1400a336b
jmp 0x1400a337a
movzx edx, word [rax]
xor edx, 0x7273
movzx r8d, byte [rax + 2]
xor r8d, 0x4e
or r8w, dx
je 0x1400a35b2
movzx edx, word [rax]
cmp edx, 0x7273
je 0x1400a3417
mov rcx, rsi
call fcn.1400a93a0
mov rdi, rax
test rax, rax
je 0x1400a3a0d
test bl, bl
je 0x1400a3a0d
mov rbx, qword [rsi + 0x1330]
mov rcx, qword [rbx + 8]
lea rax, [rcx - 0xfd0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a33da
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a3736
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, [0x1400cbf60]
mov qword [rbx + rcx + 0x10], rax
mov qword [rbx + rcx + 0x28], rdi
lea rdi, [rbx + rcx]
add rdi, 0x10
jmp 0x1400a3a0d
add rax, 2
mov qword [rsi], rax
cmp rcx, rax
je 0x1400a373b
movsx eax, byte [rax]
add eax, 0xffffffd0
cmp eax, 9
ja 0x1400a373b
mov rcx, rsi
call fcn.1400a92b0
test rax, rax
je 0x1400a3a0b
mov r14, rax
xor edi, edi
test bl, bl
je 0x1400a389e
lea r15, [0x1400cbf60]
lea r12, [0x1400cbc90]
xor ebx, ebx
jmp 0x1400a348d
cmp byte [rax], 0x45
je 0x1400a396a
mov rcx, rsi
call fcn.1400a92b0
mov r14, rax
test rax, rax
je 0x1400a3a0d
mov r13, qword [rsi + 0x1330]
mov rcx, qword [r13 + 8]
test rbx, rbx
je 0x1400a352c
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a34da
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a3736
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 0x1400a3470
jmp 0x1400a3479
lea rax, [rcx - 0xfd0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a3565
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a3736
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 0x1400a3470
jmp 0x1400a3479
add rax, 3
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a9120
test rax, rax
je 0x1400a3a0b
mov rbx, rax
mov rax, qword [rsi]
cmp qword [rsi + 8], rax
je 0x1400a367c
cmp byte [rax], 0x49
jne 0x1400a367c
xor edi, edi
mov rcx, rsi
xor edx, edx
call fcn.14009e010
test rax, rax
je 0x1400a3a0d
mov r14, rax
mov rdi, qword [rsi + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a363f
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a3736
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, [0x1400cc758]
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, [0x1400cbc90]
jmp 0x1400a36e2
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 0x1400a36f4
cmp byte [rax], 0x45
je 0x1400a37ff
mov rcx, rsi
call fcn.1400a92b0
test rax, rax
je 0x1400a3a0d
mov r14, rax
mov r12, qword [rsi + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a36a7
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
jne 0x1400a3690
call fcn.14008a4f0
mov rcx, rsi
call fcn.1400a9120
test rax, rax
je 0x1400a3a0b
mov rbx, rax
mov rax, qword [rsi]
cmp qword [rsi + 8], rax
je 0x1400a3970
cmp byte [rax], 0x49
jne 0x1400a3970
xor edi, edi
mov rcx, rsi
xor edx, edx
call fcn.14009e010
test rax, rax
je 0x1400a3a0d
mov r14, rax
mov rdi, qword [rsi + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a37bd
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a3736
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, [0x1400cc758]
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 0x1400a3970
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a93a0
test rax, rax
je 0x1400a3a0b
mov r14, rax
mov r12, qword [rsi + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a385e
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a3736
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 0x1400a3a0d
lea r15, [0x1400cbc90]
xor ebx, ebx
jmp 0x1400a390d
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 0x1400a38f9
cmp byte [rax], 0x45
je 0x1400a396a
mov rcx, rsi
call fcn.1400a92b0
mov r14, rax
test rax, rax
je 0x1400a3a0d
test rbx, rbx
je 0x1400a395c
mov r12, qword [rsi + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a38b0
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a3736
mov qword [rax], r12
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r12, rax
jmp 0x1400a38b0
mov rbx, r14
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x1400a38f4
jmp 0x1400a38f9
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a93a0
test rax, rax
je 0x1400a3a0b
mov r14, rax
mov r15, qword [rsi + 0x1330]
mov rcx, qword [r15 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a39c8
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a3736
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, [0x1400cbc90]
mov qword [r15 + rcx + 0x10], rax
mov qword [r15 + rcx + 0x28], rbx
mov qword [r15 + rcx + 0x30], r14
jmp 0x1400a3a0d
xor edi, edi
mov rax, rdi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret