Function at 0x14006a5e0
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x138
mov rbx, qword [rcx]
mov r12, qword [rcx + 8]
mov r15, r12
sub r15, rbx
cmp r15, 2
jae 0x14006a61f
xor edi, edi
mov rax, rdi
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rsi, rcx
lea rcx, [0x14008a4b5]
mov r8d, 2
mov rdx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
mov edi, eax
test eax, eax
je 0x14006a642
xor r14d, r14d
jmp 0x14006a658
add rbx, 2
mov qword [rsi], rbx
mov r15, r12
sub r15, rbx
mov r14b, 1
cmp r15, 2
jb 0x14006a606
movzx eax, byte [rbx]
mov edx, 0x3d
xor ecx, ecx
lea rbp, [0x14008a770]
jmp 0x14006a67b
inc r8
mov rcx, r8
cmp rdx, rcx
je 0x14006a6b4
lea r8, [rcx + rdx]
shr r8, 1
mov r9, r8
shl r9, 4
movzx r10d, byte [r9 + rbp]
cmp al, r10b
jg 0x14006a670
cmp al, r10b
jne 0x14006a6ac
movzx r9d, byte [r9 + rbp + 1]
cmp byte [rbx + 1], r9b
setg r9b
test r9b, 1
jne 0x14006a670
mov rdx, r8
cmp rdx, rcx
jne 0x14006a67b
shl rcx, 4
cmp al, byte [rcx + rbp]
jne 0x14006a828
add rbp, rcx
movzx ecx, byte [rbx + 1]
cmp cl, byte [rbp + 1]
jne 0x14006a828
add rbx, 2
mov qword [rsi], rbx
movzx r15d, byte [rbp + 2]
mov rdi, qword [rbp + 8]
mov qword [rsp + 0x40], rdi
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rbx, rax
add rax, rdi
mov qword [rsp + 0x48], rax
cmp r15d, 0xa
ja case.default.0x14006a773
cmp rbx, 8
jb 0x14006a71e
lea rcx, [0x14008a56c]
mov r8d, 8
mov rdx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
test eax, eax
je 0x14006a738
lea rcx, str.Res.startsWith__operator_____operator_name_does_not_start_with_operator_
lea rdx, str._build_llvm_project_libcxxabi_src_demangle_ItaniumDemangle.h
mov r8d, 0xa47
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
cmp rbx, 8
mov eax, 8
cmovb rax, rbx
add rdi, rax
mov qword [rsp + 0x40], rdi
cmp rbx, 9
jb case.default.0x14006a773
cmp byte [rdi], 0x20
jne case.default.0x14006a773
inc rdi
mov qword [rsp + 0x40], rdi
xor edi, edi
mov eax, r15d
lea rcx, [0x14006b97c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov ebp, dword [rbp + 4]
mov rcx, rsi
call fcn.14006a5e0
test rax, rax
je 0x14006a606
mov rbx, rax
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006a7d0
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006b965
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, [0x14008ac58]
mov qword [r14 + rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [r14 + rcx + 0x28], xmm0
mov qword [r14 + rcx + 0x38], rbx
jmp case.0x14006a773.10
cmp eax, 0x66
je 0x14006a852
cmp eax, 0x54
je 0x14006a879
cmp eax, 0x4c
jne 0x14006a894
mov rcx, rsi
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.14006c0f0
movzx eax, byte [rbx + 1]
cmp al, 0x70
jne 0x14006a942
mov rcx, rsi
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x14006ccc0
mov rcx, rsi
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.140069530
lea rcx, [0x14008a4bb]
mov r8d, 2
mov rdx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
test eax, eax
je 0x14006a977
sub r12, rbx
cmp r12, 2
jb 0x14006a8d7
lea rcx, [0x14008a4be]
mov r8d, 2
mov rdx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
test eax, eax
je 0x14006ab18
lea rax, [0x14008a4c1]
mov qword [rsp + 0xf0], rax
lea rax, [0x14008a4c3]
mov qword [rsp + 0xf8], rax
lea rdx, [rsp + 0xf0]
mov rcx, rsi
call fcn.140064470
test al, al
je 0x14006aa44
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14006a606
mov dword [rsp + 0x50], 2
lea rdx, [rsp + 0x40]
lea r8, [rsp + 0x50]
mov rcx, rsi
call fcn.14006d800
jmp 0x14006b7a9
cmp al, 0x4c
jne 0x14006a95c
cmp r15, 3
jb 0x14006a95c
movsx eax, byte [rbx + 2]
add eax, 0xffffffd0
cmp eax, 9
jbe 0x14006a85e
mov rcx, rsi
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x14006d050
add rbx, 2
mov qword [rsi], rbx
mov r14, qword [rsi + 0x18]
sub r14, qword [rsi + 0x10]
sar r14, 3
lea r15, [rsi + 0x28]
xor edi, edi
jmp 0x14006a9d9
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x14006b965
lea rax, [r12 + r13]
sar r12, 2
mov qword [rsi + 0x18], rax
lea rcx, [r12*8]
add rcx, r13
mov qword [rsi + 0x20], rcx
mov r12, rax
lea rax, [r12 + 8]
mov qword [rsi + 0x18], rax
mov qword [r12], rbx
mov rbx, qword [rsi]
mov r12, qword [rsi + 8]
cmp rbx, r12
je 0x14006a9e7
cmp byte [rbx], 0x45
je 0x14006aa91
mov rcx, rsi
call fcn.14006d310
test rax, rax
je case.0x14006a773.10
mov rbx, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x14006a9c5
mov rcx, qword [rsi + 0x10]
sub r12, rcx
lea rdx, [r12 + r12]
cmp rcx, r15
jne 0x14006a992
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006b965
mov r13, rax
mov rcx, rax
mov rdx, r15
mov r8, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x14006a9a7
lea rax, [0x14008a4ce]
mov qword [rsp + 0xe0], rax
lea rax, [0x14008a4d0]
mov qword [rsp + 0xe8], rax
lea rdx, [rsp + 0xe0]
mov rcx, rsi
call fcn.140064470
test al, al
je 0x14006aaba
mov rcx, rsi
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x14006d8e0
inc rbx
mov qword [rsi], rbx
lea rdi, [rsp + 0x40]
mov rcx, rdi
mov rdx, rsi
mov r8, r14
call fcn.140067500
mov rcx, rsi
mov rdx, rdi
call fcn.14006d5e0
jmp 0x14006b7a9
lea rax, [0x14008a4d1]
mov qword [rsp + 0xd0], rax
lea rax, [0x14008a4d3]
mov qword [rsp + 0xd8], rax
lea rdx, [rsp + 0xd0]
mov rcx, rsi
call fcn.140064470
test al, al
je 0x14006b161
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14006a606
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.14006dc70
jmp 0x14006b7a9
add rbx, 2
mov qword [rsi], rbx
mov rcx, rsi
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.14006d690
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14006a606
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14006a606
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x38], eax
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x60]
lea r9, [rsp + 0x38]
mov rcx, rsi
call fcn.14006ba90
jmp 0x14006b7a9
mov rcx, rsi
call fcn.1400652d0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14006a606
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14006a606
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x38], eax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x40]
lea r8, [rsp + 0x50]
lea r9, [rsp + 0x60]
mov rcx, rsi
call fcn.14006c000
jmp 0x14006b7a9
test byte [rbp + 3], 1
jne 0x14006b1d5
mov rcx, rsi
call fcn.14006a5e0
jmp 0x14006b1dd
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x14006b122
cmp byte [rax], 0x5f
jne 0x14006b122
inc rax
mov qword [rsi], rax
movups xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x110], xmm0
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x60], eax
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14006a606
lea rdx, [rsp + 0x110]
lea r8, [rsp + 0x50]
lea r9, [rsp + 0x60]
mov rcx, rsi
call fcn.14006ed30
jmp 0x14006b7a9
movups xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x120], xmm0
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x38], eax
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14006a606
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14006a606
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x120]
lea r9, [rsp + 0x60]
mov rcx, rsi
call fcn.14006e850
jmp 0x14006b7a9
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14006a606
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14006a606
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x38], eax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x40]
lea r9, [rsp + 0x60]
mov rcx, rsi
call fcn.14006bb60
jmp 0x14006b7a9
mov rax, qword [rsi + 0x18]
sub rax, qword [rsi + 0x10]
sar rax, 3
mov qword [rsp + 0x78], rax
lea rbx, [rsi + 0x28]
xor edi, edi
jmp 0x14006ad97
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x14006b965
lea rax, [r12 + r13]
sar r12, 2
mov qword [rsi + 0x18], rax
lea rcx, [r12*8]
add rcx, r13
mov qword [rsi + 0x20], rcx
mov r12, rax
lea rax, [r12 + 8]
mov qword [rsi + 0x18], rax
mov qword [r12], r15
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x14006ada9
cmp byte [rax], 0x5f
je 0x14006b291
mov rcx, rsi
call fcn.14006a5e0
test rax, rax
je case.0x14006a773.10
mov r15, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x14006ad8a
mov rcx, qword [rsi + 0x10]
sub r12, rcx
lea rdx, [r12 + r12]
cmp rcx, rbx
jne 0x14006ad57
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006b965
mov r13, rax
mov rcx, rax
mov rdx, rbx
mov r8, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x14006ad6c
mov rcx, rsi
call fcn.14006a5e0
test rax, rax
je 0x14006a606
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 0x14006ae63
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006b965
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, [0x14008af88]
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 case.0x14006a773.10
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14006a606
mov rbx, qword [rsi + 0x18]
sub rbx, qword [rsi + 0x10]
sar rbx, 3
lea r14, [rsi + 0x28]
xor edi, edi
jmp 0x14006af29
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x14006b965
lea rax, [r12 + r13]
sar r12, 2
mov qword [rsi + 0x18], rax
lea rcx, [r12*8]
add rcx, r13
mov qword [rsi + 0x20], rcx
mov r12, rax
lea rax, [r12 + 8]
mov qword [rsi + 0x18], rax
mov qword [r12], r15
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x14006af3b
cmp byte [rax], 0x45
je 0x14006b43a
mov rcx, rsi
call fcn.14006a5e0
test rax, rax
je case.0x14006a773.10
mov r15, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x14006af1c
mov rcx, qword [rsi + 0x10]
sub r12, rcx
lea rdx, [r12 + r12]
cmp rcx, r14
jne 0x14006aee9
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006b965
mov r13, rax
mov rcx, rax
mov rdx, r14
mov r8, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x14006aefe
movzx ebx, byte [rsi + 0x308]
mov byte [rsi + 0x308], 0
mov rcx, rsi
call fcn.1400652d0
mov qword [rsp + 0x60], rax
mov byte [rsi + 0x308], bl
test rax, rax
je 0x14006a606
mov rbx, qword [rsi + 0x18]
sub rbx, qword [rsi + 0x10]
sar rbx, 3
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
cmp rax, rcx
je 0x14006b4cc
movzx edx, byte [rax]
cmp dl, 0x5f
mov byte [rsp + 0x78], dl
jne 0x14006b495
inc rax
mov qword [rsi], rax
lea r14, [rsi + 0x28]
xor edi, edi
jmp 0x14006b0b7
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14006a606
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14006a606
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14006a606
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x74], eax
lea rax, [rsp + 0x74]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x60]
lea r9, [rsp + 0x38]
mov rcx, rsi
call fcn.14006bf20
jmp 0x14006b7a9
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x14006b965
lea rax, [r12 + r13]
sar r12, 2
mov qword [rsi + 0x18], rax
lea rcx, [r12*8]
add rcx, r13
mov qword [rsi + 0x20], rcx
mov r12, 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 0x14006b0c5
cmp byte [rax], 0x45
je 0x14006b49a
mov rcx, rsi
call fcn.14006a5e0
test rax, rax
je case.0x14006a773.10
mov r15, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x14006b0a3
mov rcx, qword [rsi + 0x10]
sub r12, rcx
lea rdx, [r12 + r12]
cmp rcx, r14
jne 0x14006b070
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006b965
mov r13, rax
mov rcx, rax
mov rdx, r14
mov r8, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x14006b085
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14006a606
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x60], eax
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x40]
lea r9, [rsp + 0x60]
mov rcx, rsi
call fcn.14006b9b0
jmp 0x14006b7a9
lea rax, [0x14008a4d4]
mov qword [rsp + 0xc0], rax
lea rax, [0x14008a4d6]
mov qword [rsp + 0xc8], rax
lea rdx, [rsp + 0xc0]
mov rcx, rsi
call fcn.140064470
test al, al
je 0x14006b3b1
mov rax, qword [rsi]
cmp qword [rsi + 8], rax
je 0x14006b47a
cmp byte [rax], 0x54
jne 0x14006b47a
mov rcx, rsi
call fcn.140069530
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14006a606
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.14006dd10
jmp 0x14006b7a9
mov rcx, rsi
call fcn.1400652d0
mov rbx, rax
test rax, rax
je 0x14006a606
mov ebp, dword [rbp + 4]
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfb0]
cmp rax, 0xfffffffffffff00f
ja 0x14006b230
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006b965
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, [0x14008b2c8]
mov qword [r14 + rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [r14 + rcx + 0x28], xmm0
mov qword [r14 + rcx + 0x38], rbx
xorps xmm0, xmm0
movups xmmword [r14 + rcx + 0x40], xmm0
jmp case.0x14006a773.10
inc rax
mov qword [rsi], rax
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, qword [rsp + 0x78]
call fcn.140067500
mov rcx, rsi
call fcn.1400652d0
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14006a606
lea rax, [0x14008a4b8]
mov qword [rsp + 0x100], rax
lea rax, [0x14008a4ba]
mov qword [rsp + 0x108], rax
lea rdx, [rsp + 0x100]
mov rcx, rsi
call fcn.140064470
mov rcx, qword [rsi + 0x18]
sub rcx, qword [rsi + 0x10]
mov qword [rsp + 0x78], rcx
test al, al
je 0x14006b5bf
xor edi, edi
jmp 0x14006b346
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x14006b965
lea rax, [r12 + r13]
sar r12, 2
mov qword [rsi + 0x18], rax
lea rcx, [r12*8]
add rcx, r13
mov qword [rsi + 0x20], rcx
mov r12, rax
lea rax, [r12 + 8]
mov qword [rsi + 0x18], rax
mov qword [r12], r15
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x14006b358
cmp byte [rax], 0x45
je 0x14006b5d5
mov rcx, rsi
call fcn.14006a5e0
test rax, rax
je case.0x14006a773.10
mov r15, rax
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x14006b339
mov rcx, qword [rsi + 0x10]
sub r12, rcx
lea rdx, [r12 + r12]
cmp rcx, rbx
jne 0x14006b306
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006b965
mov r13, rax
mov rcx, rax
mov rdx, rbx
mov r8, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x14006b31b
lea rax, [0x14008a4e2]
mov qword [rsp + 0xb0], rax
lea rax, [0x14008a4e4]
mov qword [rsp + 0xb8], rax
lea rdx, [rsp + 0xb0]
mov rcx, rsi
call fcn.140064470
test al, al
je 0x14006b520
lea rbx, [rsi + 0x10]
mov rdi, qword [rsi + 0x18]
sub rdi, qword [rsi + 0x10]
sar rdi, 3
lea r14, [rsp + 0x40]
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x14006b40e
cmp byte [rax], 0x45
je 0x14006b688
mov rcx, rsi
call fcn.140067150
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14006a606
mov rcx, rbx
mov rdx, r14
call fcn.1400673b0
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x14006b405
jmp 0x14006b40e
inc rax
mov qword [rsi], rax
lea rdi, [rsp + 0x50]
mov rcx, rdi
mov rdx, rsi
mov r8, rbx
call fcn.140067500
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x38], eax
lea rdx, [rsp + 0x60]
lea r9, [rsp + 0x38]
mov rcx, rsi
mov r8, rdi
call fcn.14006bd60
jmp 0x14006b7a9
mov rcx, rsi
call 0x14006ccc0
mov qword [rsp + 0x40], rax
test rax, rax
jne 0x14006b6b1
jmp 0x14006a606
cmp dl, 0x45
jne 0x14006b4cc
inc rax
mov qword [rsi], rax
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, rbx
call fcn.140067500
cmp byte [rsp + 0x78], 0x5f
je 0x14006b785
cmp qword [rsp + 0x58], 1
jne 0x14006a606
jmp 0x14006b785
mov rcx, rsi
call fcn.14006a5e0
test rax, rax
je 0x14006a606
mov rdi, rax
mov r14, qword [rsi + 0x18]
cmp r14, qword [rsi + 0x20]
jne 0x14006b75e
lea r12, [rsi + 0x28]
mov rcx, qword [rsi + 0x10]
sub r14, rcx
lea rdx, [r14 + r14]
cmp rcx, r12
je 0x14006b721
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r15, rax
mov qword [rsi + 0x10], rax
test rax, rax
jne 0x14006b747
jmp 0x14006b965
lea rax, [0x14008a4e5]
mov qword [rsp + 0xa0], rax
lea rax, [0x14008a4e7]
mov qword [rsp + 0xa8], rax
lea rdx, [rsp + 0xa0]
mov rcx, rsi
call fcn.140064470
test al, al
je 0x14006b634
mov rcx, rsi
call fcn.1400652d0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14006a606
lea rbx, [rsi + 0x10]
mov rdi, qword [rsi + 0x18]
sub rdi, qword [rsi + 0x10]
sar rdi, 3
lea r14, [rsp + 0x40]
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x14006b593
cmp byte [rax], 0x45
je 0x14006b873
mov rcx, rsi
call fcn.14006d310
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14006a606
mov rcx, rbx
mov rdx, r14
call fcn.1400673b0
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x14006b58a
jmp 0x14006b593
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x14006a606
cmp byte [rax], 0x45
jne 0x14006a606
mov r8, qword [rsp + 0x78]
sar r8, 3
inc rax
mov qword [rsi], rax
lea rdi, [rsp + 0x60]
mov rcx, rdi
mov rdx, rsi
call fcn.140067500
movzx eax, byte [rbp + 3]
and al, 1
mov ecx, dword [rbp + 4]
shl ecx, 0x19
sar ecx, 0x19
mov dword [rsp + 0x74], ecx
lea rcx, [rsp + 0x74]
mov qword [rsp + 0x30], rcx
mov byte [rsp + 0x28], al
mov byte [rsp + 0x20], r14b
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x38]
mov rcx, rsi
mov r9, rdi
call fcn.14006bc50
jmp 0x14006b7a9
lea rax, [0x14008a4e8]
mov qword [rsp + 0x90], rax
lea rax, [0x14008a4ea]
mov qword [rsp + 0x98], rax
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.140064470
test al, al
je 0x14006b6c3
lea rdx, [0x14008a4eb]
mov rcx, rsi
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x14006dfe0
inc rax
mov qword [rsi], rax
lea rbx, [rsp + 0x40]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.140067500
mov rcx, rsi
mov rdx, rbx
call fcn.14006de70
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.14006ddb0
jmp 0x14006b7a9
lea rax, [0x14008a4f1]
mov qword [rsp + 0x80], rax
lea rax, [0x14008a4f3]
mov qword [rsp + 0x88], rax
lea rdx, [rsp + 0x80]
mov rcx, rsi
call fcn.140064470
test al, al
je 0x14006b7b1
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14006a606
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.14006e0a0
jmp 0x14006b7a9
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006b965
mov r15, rax
mov rcx, rax
mov rdx, r12
mov r8, r14
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r15
lea rax, [r15 + r14]
sar r14, 2
mov qword [rsi + 0x18], rax
lea rcx, [r15 + r14*8]
mov qword [rsi + 0x20], rcx
mov r14, rax
lea rax, [r14 + 8]
mov qword [rsi + 0x18], rax
mov qword [r14], rdi
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, rbx
call fcn.140067500
cmp qword [rsp + 0x58], 1
jne 0x14006a606
mov eax, dword [rbp + 4]
shl eax, 0x19
sar eax, 0x19
mov dword [rsp + 0x38], eax
lea rdx, [rsp + 0x60]
lea r8, [rsp + 0x50]
lea r9, [rsp + 0x38]
mov rcx, rsi
call fcn.14006be40
mov rdi, rax
jmp case.0x14006a773.10
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x14006b8a1
cmp byte [rax], 0x75
jne 0x14006b8a1
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400687a0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14006a606
mov rcx, qword [rax]
mov r8, qword [rcx + 0x30]
lea rcx, [rsp + 0x40]
mov rdx, rax
mov rax, r8
call qword [0x140139008]
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
sub rax, rcx
cmp rax, 8
jne 0x14006b828
lea rdx, str.__uuidof
mov r8d, 8
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
test eax, eax
je 0x14006b900
lea rbx, [rsi + 0x10]
mov rdi, qword [rsi + 0x18]
sub rdi, qword [rsi + 0x10]
lea r14, [rsp + 0x40]
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x14006b847
cmp byte [rax], 0x45
je 0x14006b8c1
mov rcx, rsi
call fcn.140067150
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14006a606
mov rcx, rbx
mov rdx, r14
call fcn.1400673b0
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x14006b842
jmp 0x14006b847
inc rax
mov qword [rsi], rax
lea rbx, [rsp + 0x40]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.140067500
lea rdx, [rsp + 0x50]
mov rcx, rsi
mov r8, rbx
call fcn.14006df20
jmp 0x14006b7a9
test edi, edi
sete dl
mov rcx, rsi
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x14006e140
inc rax
mov qword [rsi], rax
sar rdi, 3
lea rbx, [rsp + 0x40]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.140067500
mov dword [rsp + 0x38], 1
lea rdx, [rsp + 0x50]
lea r9, [rsp + 0x38]
mov rcx, rsi
mov r8, rbx
call fcn.14006bd60
jmp 0x14006b7a9
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x14006b828
movzx ecx, byte [rax]
cmp ecx, 0x7a
je 0x14006b92e
cmp ecx, 0x74
jne 0x14006b828
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400652d0
jmp 0x14006b93c
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.14006a5e0
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14006a606
lea rcx, [rsi + 0x10]
mov rdi, qword [rsi + 0x18]
sub rdi, qword [rsi + 0x10]
lea rdx, [rsp + 0x60]
call fcn.1400673b0
jmp 0x14006b8c7
call fcn.14004bb30
mov byte [rsi + 0x308], bl
mov rcx, rax
call fcn.14004ef30
int3
push r14
push rsi
push rdi
push rbx
sub rsp, 0x38
mov rsi, rcx
mov rdi, qword [rcx]
mov rbx, qword [rcx + 8]
mov rax, rbx
sub rax, rdi
cmp rax, 3
jae 0x14006ccea
cmp rax, 2
je 0x14006cd07
jmp 0x14006d030
lea rcx, [0x14008bf08]
mov r8d, 3
mov rdx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
test eax, eax
je 0x14006cebf
lea rcx, [0x14008bf11]
mov r8d, 2
mov rdx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
test eax, eax
je 0x14006ce33
lea rcx, [0x14008bf14]
mov r8d, 2
mov rdx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
test eax, eax
jne 0x14006d030
add rdi, 2
mov qword [rsi], rdi
cmp rbx, rdi
je 0x14006d030
movsx eax, byte [rdi]
add eax, 0xffffffd0
cmp eax, 9
ja 0x14006d030
mov rcx, rdi
nop word cs:[rax + rax]
movsx eax, byte [rcx]
add eax, 0xffffffd0
cmp eax, 9
ja 0x14006cd89
inc rcx
mov qword [rsi], rcx
cmp rcx, rbx
jne 0x14006cd70
mov rcx, rbx
xor eax, eax
cmp rdi, rcx
je 0x14006d032
cmp rcx, rbx
je 0x14006d032
cmp byte [rcx], 0x70
jne 0x14006d030
lea rax, [rcx + 1]
mov qword [rsi], rax
cmp rax, rbx
je 0x14006d006
cmp byte [rax], 0x72
jne 0x14006cdc5
add rcx, 2
mov qword [rsi], rcx
mov rax, rcx
cmp rax, rbx
je 0x14006d006
cmp byte [rax], 0x56
jne 0x14006cdd9
inc rax
mov qword [rsi], rax
cmp rax, rbx
je 0x14006d006
cmp byte [rax], 0x4b
jne 0x14006cded
inc rax
mov qword [rsi], rax
cmp rbx, rax
je 0x14006d009
movsx ecx, byte [rax]
add ecx, 0xffffffd0
cmp ecx, 9
ja 0x14006d009
mov rcx, rax
movsx edx, byte [rcx]
add edx, 0xffffffd0
cmp edx, 9
ja 0x14006ce21
inc rcx
mov qword [rsi], rcx
cmp rcx, rbx
jne 0x14006ce08
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rcx
mov rax, rcx
jmp 0x14006d011
lea r14, [rdi + 2]
mov qword [rsi], r14
cmp r14, rbx
je 0x14006d030
cmp byte [r14], 0x72
jne 0x14006ce53
add rdi, 3
mov qword [rsi], rdi
mov r14, rdi
cmp r14, rbx
je 0x14006d030
cmp byte [r14], 0x56
jne 0x14006ce68
inc r14
mov qword [rsi], r14
cmp r14, rbx
je 0x14006d030
cmp byte [r14], 0x4b
jne 0x14006ce7d
inc r14
mov qword [rsi], r14
cmp rbx, r14
je 0x14006d030
movsx eax, byte [r14]
add eax, 0xffffffd0
cmp eax, 9
ja 0x14006cf5c
xor eax, eax
mov rcx, r14
nop dword [rax + rax]
movsx edx, byte [rcx]
add edx, 0xffffffd0
cmp edx, 9
ja 0x14006cf66
inc rcx
mov qword [rsi], rcx
cmp rcx, rbx
jne 0x14006cea0
jmp 0x14006d032
add rdi, 3
mov qword [rsi], rdi
mov rdi, qword [rsi + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006cf0a
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006d03c
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], 7
and byte [rdi + rcx + 0x1c], 0xc0
lea rax, [rdi + rcx]
add rax, 0x10
movzx edx, byte [rdi + rcx + 0x20]
and dl, 0xc0
or dl, 0x15
mov byte [rdi + rcx + 0x20], dl
lea rdx, [0x14008a298]
mov qword [rdi + rcx + 0x10], rdx
lea rdx, str.this
mov qword [rdi + rcx + 0x28], rdx
lea rdx, [0x14008bf10]
mov qword [rdi + rcx + 0x30], rdx
jmp 0x14006d032
xor edi, edi
mov rcx, r14
xor r14d, r14d
jmp 0x14006cf69
mov rdi, rcx
cmp rcx, rbx
je 0x14006d030
cmp byte [rcx], 0x5f
jne 0x14006d030
inc rcx
mov qword [rsi], rcx
mov rbx, qword [rsi + 0x1330]
mov rcx, qword [rbx + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006cfc5
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006d03c
mov qword [rax], rbx
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov rbx, rax
lea rax, [rcx + 0x30]
mov qword [rbx + 8], rax
lea rax, [rbx + rcx]
add rax, 0x10
mov byte [rbx + rcx + 0x18], 0x3f
and byte [rbx + rcx + 0x1c], 0xc0
movzx edx, byte [rbx + rcx + 0x20]
and dl, 0xc0
or dl, 0x15
mov byte [rbx + rcx + 0x20], dl
lea rdx, [0x14008bf28]
mov qword [rbx + rcx + 0x10], rdx
mov qword [rbx + rcx + 0x28], r14
mov qword [rbx + rcx + 0x30], rdi
jmp 0x14006d032
mov rax, rbx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x20], xmm0
cmp rax, rbx
je 0x14006d030
cmp byte [rax], 0x5f
jne 0x14006d030
inc rax
mov qword [rsi], rax
lea rdx, [rsp + 0x20]
mov rcx, rsi
call fcn.140072da0
jmp 0x14006d032
xor eax, eax
add rsp, 0x38
pop rbx
pop rdi
pop rsi
pop r14
ret
call fcn.14004bb30
int3
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rax, qword [rcx]
mov rdx, qword [rcx + 8]
cmp rax, rdx
je 0x14006d2f2
cmp byte [rax], 0x66
jne 0x14006d2f2
mov rsi, rcx
lea rcx, [rax + 1]
mov qword [rsi], rcx
cmp rdx, rcx
je 0x14006d2f2
movsx ecx, byte [rcx]
add ecx, 0xffffffb4
cmp ecx, 0x26
ja 0x14006d2f2
movabs r8, 0x4100000041
bt r8, rcx
jae 0x14006d2f2
movabs r8, 0x3fffffffbf
xor r15d, r15d
bt r8, rcx
setb r8b
movabs r12, 0x3effffffff
shr r12, cl
lea rcx, [rax + 2]
mov qword [rsi], rcx
sub rdx, rcx
cmp rdx, 2
jb 0x14006d2f2
mov r15b, r8b
movzx ecx, byte [rax + 2]
mov r8d, 0x3d
xor edx, edx
lea r14, [0x14008a770]
jmp 0x14006d10b
inc r9
mov rdx, r9
cmp r8, rdx
je 0x14006d13d
lea r9, [rdx + r8]
shr r9, 1
mov r10, r9
shl r10, 4
cmp cl, byte [r10 + r14]
jg 0x14006d100
jne 0x14006d135
movzx r10d, byte [r10 + r14 + 1]
cmp byte [rax + 3], r10b
setg r10b
test r10b, 1
jne 0x14006d100
mov r8, r9
cmp r8, rdx
jne 0x14006d10b
shl rdx, 4
cmp cl, byte [rdx + r14]
jne 0x14006d2f2
add r14, rdx
movzx ecx, byte [rax + 3]
cmp cl, byte [r14 + 1]
jne 0x14006d2f2
add rax, 4
mov qword [rsi], rax
movzx eax, byte [r14 + 2]
cmp eax, 2
je 0x14006d1af
cmp eax, 4
jne 0x14006d2f2
mov rdi, qword [r14 + 8]
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rbx, rax
test rax, rax
jne 0x14006d1a4
lea rcx, str._empty__
lea rdx, str._build_llvm_project_libcxxabi_src_demangle_StringView.h
mov r8d, 0x4c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
cmp byte [rdi + rbx - 1], 0x2a
jne 0x14006d2f2
mov rcx, rsi
call fcn.14006a5e0
test rax, rax
je 0x14006d2f2
mov rdi, rax
test r12b, 1
jne 0x14006d1ce
xor r12d, r12d
jmp 0x14006d1f3
mov rcx, rsi
call fcn.14006a5e0
test rax, rax
je 0x14006d2f2
test r15, r15
mov rcx, rax
cmove rcx, rdi
mov r12, rdi
cmove r12, rax
mov rdi, rcx
mov rbx, qword [r14 + 8]
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov r14, rax
cmp rax, 8
jb 0x14006d221
lea rcx, [0x14008a56c]
mov r8d, 8
mov rdx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
test eax, eax
je 0x14006d23b
lea rcx, str.Res.startsWith__operator_____operator_name_does_not_start_with_operator_
lea rdx, str._build_llvm_project_libcxxabi_src_demangle_ItaniumDemangle.h
mov r8d, 0xa47
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
cmp r14, 8
mov r13d, 8
cmovb r13, r14
add r13, rbx
cmp r14, 9
jb 0x14006d25f
xor eax, eax
cmp byte [r13], 0x20
sete al
add r13, rax
mov rbp, qword [rsi + 0x1330]
mov rcx, qword [rbp + 8]
lea rax, [rcx - 0xfb0]
cmp rax, 0xfffffffffffff00f
ja 0x14006d29f
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006d305
mov qword [rax], rbp
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov rbp, rax
add rbx, r14
lea rax, [rcx + 0x40]
mov qword [rbp + 8], rax
mov byte [rbp + rcx + 0x18], 0x43
and byte [rbp + rcx + 0x1c], 0xc0
lea rax, [rcx + rbp]
add rax, 0x10
movzx edx, byte [rbp + rcx + 0x20]
and dl, 0xc0
or dl, 0x15
mov byte [rbp + rcx + 0x20], dl
lea rdx, [0x14008c018]
mov qword [rbp + rcx + 0x10], rdx
mov qword [rbp + rcx + 0x28], rdi
mov qword [rbp + rcx + 0x30], r12
mov qword [rbp + rcx + 0x38], r13
mov qword [rbp + rcx + 0x40], rbx
mov byte [rbp + rcx + 0x48], r15b
jmp 0x14006d2f4
xor eax, eax
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14004bb30
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.1400652d0
test rax, rax
je 0x14006dc45
mov rsi, rax
mov rcx, rbx
call fcn.14006a5e0
test rax, rax
je 0x14006dc45
mov r15, qword [rbx]
mov rdx, qword [rbx + 8]
mov r13, r15
cmp r15, rdx
je 0x14006d934
cmp byte [r15], 0x6e
mov r13, r15
jne 0x14006d934
lea r13, [r15 + 1]
mov qword [rbx], r13
cmp rdx, r13
je 0x14006dc45
mov qword [rsp + 0x40], rax
movsx ecx, byte [r13]
add ecx, 0xffffffd0
cmp ecx, 9
ja 0x14006d97d
xor r14d, r14d
nop word cs:[rax + rax]
movsx ecx, byte [r13]
add ecx, 0xffffffd0
cmp ecx, 9
ja 0x14006d98c
inc r13
mov qword [rbx], r13
cmp r13, rdx
jne 0x14006d960
jmp 0x14006dc48
xor eax, eax
xor r15d, r15d
cmp r13, rdx
jne 0x14006d998
jmp 0x14006dc45
mov rax, r13
cmp r13, rdx
je 0x14006dc45
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x18]
sub rax, qword [rbx + 0x10]
sar rax, 3
mov qword [rsp + 0x38], rax
lea rax, [rbx + 0x28]
mov qword [rsp + 0x28], rax
xor r14d, r14d
jmp 0x14006da2c
lea rax, [r12 + 0x30]
mov qword [rdi + 8], rax
mov byte [rdi + r12 + 0x18], 7
and byte [rdi + r12 + 0x1c], 0xc0
movzx eax, byte [rdi + r12 + 0x20]
and al, 0xc0
or al, 0x15
mov byte [rdi + r12 + 0x20], al
lea rax, [0x14008a298]
mov qword [rdi + r12 + 0x10], rax
mov qword [rdi + r12 + 0x28], r13
mov qword [rdi + r12 + 0x30], rbp
mov r13, qword [rbx + 0x18]
cmp r13, qword [rbx + 0x20]
je 0x14006dae0
lea rax, [rdi + r12]
add rax, 0x10
lea rcx, [r13 + 8]
mov qword [rbx + 0x18], rcx
mov qword [r13], rax
mov r13, qword [rbx]
mov rdx, qword [rbx + 8]
cmp r13, rdx
je 0x14006dc48
cmp byte [r13], 0x5f
jne 0x14006db53
inc r13
mov qword [rbx], r13
cmp rdx, r13
je 0x14006da80
movsx ecx, byte [r13]
add ecx, 0xffffffd0
cmp ecx, 9
ja 0x14006da80
mov rbp, r13
nop word cs:[rax + rax]
movsx ecx, byte [rbp]
add ecx, 0xffffffd0
cmp ecx, 9
ja 0x14006da85
inc rbp
mov qword [rbx], rbp
cmp rbp, rdx
jne 0x14006da60
mov rbp, rdx
jmp 0x14006da85
xor r13d, r13d
xor ebp, ebp
mov rdi, qword [rbx + 0x1330]
mov r12, qword [rdi + 8]
lea rax, [r12 - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006d9c0
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006dc5c
mov qword [rax], rdi
mov qword [rax + 8], 0
mov qword [rbx + 0x1330], rax
xor r12d, r12d
mov rdi, rax
jmp 0x14006d9c0
mov rcx, qword [rbx + 0x10]
sub r13, rcx
mov rdx, r13
add rdx, r13
cmp rcx, qword [rsp + 0x28]
je 0x14006db0a
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov rbp, rax
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x14006db32
jmp 0x14006dc5c
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006dc5c
mov rbp, rax
mov rcx, rax
mov rdx, qword [rsp + 0x28]
mov r8, r13
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rbx + 0x10], rbp
mov rax, rbp
add rax, r13
sar r13, 2
lea rcx, [r13*8]
add rcx, rbp
mov qword [rbx + 0x20], rcx
mov r13, rax
jmp 0x14006da08
cmp r13, rdx
je 0x14006db6a
cmp byte [r13], 0x70
jne 0x14006db6a
inc r13
mov qword [rbx], r13
mov dil, 1
jmp 0x14006db6c
xor edi, edi
cmp r13, rdx
je 0x14006dc45
cmp byte [r13], 0x45
jne 0x14006dc45
inc r13
mov qword [rbx], r13
lea rcx, [rsp + 0x48]
mov rdx, rbx
mov r8, qword [rsp + 0x38]
call fcn.140067500
mov r12, qword [rbx + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfa0]
cmp rax, 0xfffffffffffff00f
ja 0x14006dbdd
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006dc5c
mov qword [rax], r12
mov qword [rax + 8], 0
mov qword [rbx + 0x1330], rax
xor ecx, ecx
mov r12, rax
lea rax, [rcx + 0x50]
mov qword [r12 + 8], rax
lea r14, [r12 + rcx]
add r14, 0x10
mov byte [r12 + rcx + 0x18], 0x37
and byte [r12 + rcx + 0x1c], 0xc0
movzx eax, byte [r12 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r12 + rcx + 0x20], al
lea rax, [0x14008c420]
mov qword [r12 + rcx + 0x10], rax
mov qword [r12 + rcx + 0x28], rsi
mov rax, qword [rsp + 0x40]
mov qword [r12 + rcx + 0x30], rax
mov qword [r12 + rcx + 0x38], r15
mov rax, qword [rsp + 0x30]
mov qword [r12 + rcx + 0x40], rax
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [r12 + rcx + 0x48], xmm0
mov byte [r12 + rcx + 0x58], dil
jmp 0x14006dc48
xor r14d, r14d
mov rax, r14
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14004bb30
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 0x14006e030
mov rdi, rcx
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006e08b
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
add rax, rsi
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, [0x14008a298]
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.14004bb30
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 rdi, qword [rcx]
mov r14, qword [rcx + 8]
mov rax, r14
sub rax, rdi
cmp rax, 3
jae 0x14006e16f
cmp rax, 2
je 0x14006e18c
jmp 0x14006e1a9
lea rcx, [0x14008c6cf]
mov r8d, 3
mov rdx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
test eax, eax
je 0x14006e3e4
lea rcx, [0x14008c6d3]
mov r8d, 2
mov rdx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
test eax, eax
je 0x14006e246
mov rcx, rsi
call fcn.140074550
mov rdi, rax
test rax, rax
je 0x14006e83d
test bl, bl
je 0x14006e83d
mov rbx, qword [rsi + 0x1330]
mov rcx, qword [rbx + 8]
lea rax, [rcx - 0xfd0]
cmp rax, 0xfffffffffffff00f
ja 0x14006e209
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006e566
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, [0x14008c9b8]
mov qword [rbx + rcx + 0x10], rax
mov qword [rbx + rcx + 0x28], rdi
lea rdi, [rbx + rcx]
add rdi, 0x10
jmp 0x14006e83d
add rdi, 2
mov qword [rsi], rdi
cmp r14, rdi
je 0x14006e56b
movsx eax, byte [rdi]
add eax, 0xffffffd0
cmp eax, 9
ja 0x14006e56b
mov rcx, rsi
call fcn.140074460
test rax, rax
je 0x14006e83b
mov r14, rax
xor edi, edi
test bl, bl
je 0x14006e6ce
lea r15, [0x14008c9b8]
lea r12, [0x14008c6e8]
xor ebx, ebx
jmp 0x14006e2bd
cmp byte [rax], 0x45
je 0x14006e79a
mov rcx, rsi
call fcn.140074460
mov r14, rax
test rax, rax
je 0x14006e83d
mov r13, qword [rsi + 0x1330]
mov rcx, qword [r13 + 8]
test rbx, rbx
je 0x14006e35e
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006e30a
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006e566
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
lea rax, [rcx + r13]
add rax, 0x30
mov byte [r13 + rcx + 0x18], 0x16
and byte [r13 + rcx + 0x1c], 0xc0
movzx edx, byte [r13 + rcx + 0x20]
and dl, 0xc0
or dl, 0x15
mov byte [r13 + rcx + 0x20], dl
mov qword [r13 + rcx + 0x10], r12
mov qword [r13 + rcx + 0x28], rbx
lea rbx, [rcx + r13]
add rbx, 0x10
mov qword [rax], r14
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x14006e2a0
jmp 0x14006e2a9
lea rax, [rcx - 0xfd0]
cmp rax, 0xfffffffffffff00f
ja 0x14006e397
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006e566
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 0x14006e2a0
jmp 0x14006e2a9
add rdi, 3
mov qword [rsi], rdi
mov rcx, rsi
call fcn.140074300
test rax, rax
je 0x14006e83b
mov rbx, rax
mov rax, qword [rsi]
cmp qword [rsi + 8], rax
je 0x14006e4ae
cmp byte [rax], 0x49
jne 0x14006e4ae
xor edi, edi
mov rcx, rsi
xor edx, edx
call fcn.140068d30
test rax, rax
je 0x14006e83d
mov r14, rax
mov rdi, qword [rsi + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006e471
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006e566
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, [0x14008d1b0]
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, [0x14008c6e8]
jmp 0x14006e512
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 0x14006e524
cmp byte [rax], 0x45
je 0x14006e62f
mov rcx, rsi
call fcn.140074460
test rax, rax
je 0x14006e83d
mov r14, rax
mov r12, qword [rsi + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006e4d7
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
jne 0x14006e4c0
call fcn.14004bb30
mov rcx, rsi
call fcn.140074300
test rax, rax
je 0x14006e83b
mov rbx, rax
mov rax, qword [rsi]
cmp qword [rsi + 8], rax
je 0x14006e7a0
cmp byte [rax], 0x49
jne 0x14006e7a0
xor edi, edi
mov rcx, rsi
xor edx, edx
call fcn.140068d30
test rax, rax
je 0x14006e83d
mov r14, rax
mov rdi, qword [rsi + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006e5ed
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006e566
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, [0x14008d1b0]
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 0x14006e7a0
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.140074550
test rax, rax
je 0x14006e83b
mov r14, rax
mov r12, qword [rsi + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006e68e
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006e566
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 0x14006e83d
lea r15, [0x14008c6e8]
xor ebx, ebx
jmp 0x14006e73d
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 0x14006e729
cmp byte [rax], 0x45
je 0x14006e79a
mov rcx, rsi
call fcn.140074460
mov r14, rax
test rax, rax
je 0x14006e83d
test rbx, rbx
je 0x14006e78c
mov r12, qword [rsi + 0x1330]
mov rcx, qword [r12 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006e6e0
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006e566
mov qword [rax], r12
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r12, rax
jmp 0x14006e6e0
mov rbx, r14
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
jne 0x14006e724
jmp 0x14006e729
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.140074550
test rax, rax
je 0x14006e83b
mov r14, rax
mov r15, qword [rsi + 0x1330]
mov rcx, qword [r15 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14006e7f8
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x14006e566
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, [0x14008c6e8]
mov qword [r15 + rcx + 0x10], rax
mov qword [r15 + rcx + 0x28], rbx
mov qword [r15 + rcx + 0x30], r14
jmp 0x14006e83d
xor edi, edi
mov rax, rdi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret