Function at 0x1800d6870
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x148
mov r14, rdx
mov rsi, rcx
mov r12, qword [rdx]
mov rbx, qword [rdx + 8]
mov r8, qword [r12 + 0xa0]
mov rdi, qword [rdx + 0x10]
test r8, r8
je 0x1800d68b8
cmp r8, rdi
jae 0x1800d68b2
cmp byte [rbx + r8], 0xbf
jg 0x1800d68b8
jmp 0x1800d7a86
jne 0x1800d7a86
cmp r8, rdi
je 0x1800d7a84
movzx eax, byte [rbx + r8]
mov ecx, eax
test al, al
js 0x1800d68d7
cmp ecx, 0x70
je 0x1800d695c
jmp 0x1800d6935
mov ecx, eax
and ecx, 0x1f
movzx r9d, byte [rbx + r8 + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x1800d691e
movzx edx, byte [rbx + r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp al, 0xf0
jb 0x1800d692b
movzx r9d, byte [rbx + r8 + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and r9d, 0x3f
or r9d, edx
or ecx, r9d
cmp ecx, 0x70
je 0x1800d695c
jmp 0x1800d6935
shl ecx, 6
or ecx, r9d
cmp ecx, 0x70
je 0x1800d695c
jmp 0x1800d6935
shl ecx, 0xc
or ecx, edx
cmp ecx, 0x70
je 0x1800d695c
test r8, r8
je 0x1800d694b
cmp r8, rdi
jae 0x1800d7a86
cmp al, 0xbf
jle 0x1800d7a86
test al, al
js 0x1800d6a02
cmp eax, 0x50
jne 0x1800d7a84
cmp qword [r12 + 0x80], 0
jne 0x1800d7a94
mov qword [r12 + 0x80], 0xffffffffffffffff
mov qword [r12 + 0x98], 0
test r8, r8
je 0x1800d69ae
cmp r8, rdi
jae 0x1800d7a86
movzx eax, byte [rbx + r8]
cmp al, 0xbf
jle 0x1800d7a86
test al, al
js 0x1800d69b7
movzx eax, al
mov dword [rsp + 0x34], eax
jmp 0x1800d6a7c
movzx eax, byte [rbx + r8]
test al, al
jns 0x1800d69a2
mov ecx, eax
and cl, 0x1f
movzx r9d, cl
movzx edx, byte [rbx + r8 + 1]
and edx, 0x3f
cmp al, 0xdf
jbe 0x1800d6a51
movzx ecx, byte [rbx + r8 + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
cmp al, 0xf0
jb 0x1800d6a70
movzx eax, byte [rbx + r8 + 3]
and r9d, 7
shl r9d, 0x12
shl ecx, 6
and eax, 0x3f
or eax, ecx
or r9d, eax
jmp 0x1800d6a77
mov ecx, eax
and ecx, 0x1f
movzx r9d, byte [rbx + r8 + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x1800d6a5a
movzx edx, byte [rbx + r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp al, 0xf0
jb 0x1800d6f96
movzx eax, byte [rbx + r8 + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and eax, 0x3f
or eax, edx
or eax, ecx
cmp eax, 0x50
je 0x1800d695c
jmp 0x1800d7a84
shl r9d, 6
or r9d, edx
jmp 0x1800d6a77
shl ecx, 6
or ecx, r9d
mov eax, ecx
cmp eax, 0x50
je 0x1800d695c
jmp 0x1800d7a84
shl r9d, 0xc
or r9d, ecx
mov dword [rsp + 0x34], r9d
lea r15, [r12 + 0xa0]
mov rcx, r14
call fcn.1800c8bb0
test al, al
je 0x1800d6aa4
mov rcx, r14
call fcn.1800c8de0
mov r8, qword [r15]
cmp r8, rdi
jne 0x1800d6b58
mov rax, qword [r15 + 0x10]
mov qword [rsp + 0x78], rax
movups xmm0, xmmword [r15]
movups xmmword [rsp + 0x68], xmm0
movups xmm0, xmmword [r15]
movaps xmmword [rsp + 0x50], xmm0
mov rax, qword [r15 + 0x10]
mov qword [rsp + 0x60], rax
test rdi, rdi
js 0x1800d7aa0
je 0x1800d6afb
movzx eax, byte [0x180281288]
mov r15d, 1
mov edx, 1
mov rcx, rdi
call fcn.180057670
test rax, rax
je 0x1800d7aa3
mov r14, rax
jmp 0x1800d6b01
mov r14d, 1
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call fcn.1801f0cd0
movaps xmm0, xmmword [rsp + 0x50]
movaps xmm1, xmmword [rsp + 0x60]
movaps xmm2, xmmword [rsp + 0x70]
movups xmmword [rsi + 0x50], xmm0
movups xmmword [rsi + 0x60], xmm1
movups xmmword [rsi + 0x70], xmm2
mov qword [rsi], rdi
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], rdi
mov dword [rsi + 0x18], 0xa
test r8, r8
je 0x1800d6e9c
cmp r8, rdi
jae 0x1800d7a86
movzx eax, byte [rbx + r8]
cmp al, 0xbf
jle 0x1800d7a86
test al, al
js 0x1800d6ea7
movzx ecx, al
cmp ecx, 0x7b
jne 0x1800d6fba
lea rcx, [rsp + 0x50]
mov rdx, r14
call fcn.1800c9890
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xf0], rax
movups xmm0, xmmword [rsp + 0x68]
movaps xmmword [rsp + 0xe0], xmm0
mov rcx, r14
call fcn.1800c8bb0
test al, al
je 0x1800d6f00
lea rax, [r12 + 0x88]
mov qword [rsp + 0x38], rax
jmp 0x1800d6c07
mov rax, qword [r12 + 0x90]
mov byte [rax + r13], bpl
inc r13
mov qword [r12 + 0x98], r13
mov rcx, r14
call fcn.1800c8bb0
test al, al
je 0x1800d6f00
mov rcx, r14
call fcn.1800c8de0
mov r8, qword [r15]
cmp r8, rdi
je 0x1800d6f08
test r8, r8
je 0x1800d6c50
cmp r8, rdi
jae 0x1800d7a86
movzx eax, byte [rbx + r8]
cmp al, 0xbf
jle 0x1800d7a86
test al, al
js 0x1800d6c57
movzx ecx, al
cmp ecx, 0x7d
jne 0x1800d6cd0
jmp 0x1800d6f03
movzx eax, byte [rbx]
test al, al
jns 0x1800d6c3a
mov ecx, eax
and cl, 0x1f
movzx ecx, cl
movzx r9d, byte [rbx + r8 + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x1800d6ca4
movzx edx, byte [rbx + r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp al, 0xf0
jb 0x1800d6cb4
movzx r9d, byte [rbx + r8 + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and r9d, 0x3f
or r9d, edx
or ecx, r9d
cmp ecx, 0x7d
jne 0x1800d6cd0
jmp 0x1800d6f03
shl ecx, 6
or ecx, r9d
cmp ecx, 0x7d
jne 0x1800d6cd0
jmp 0x1800d6f03
shl ecx, 0xc
or ecx, edx
cmp ecx, 0x7d
je 0x1800d6f03
nop word cs:[rax + rax]
test r8, r8
je 0x1800d6ce6
cmp r8, rdi
jae 0x1800d7a86
cmp al, 0xbf
jle 0x1800d7a86
test al, al
js 0x1800d6d20
movzx ebp, al
mov r13, qword [r12 + 0x98]
cmp r13, qword [r12 + 0x88]
jne 0x1800d6be0
mov rcx, qword [rsp + 0x38]
call fcn.18003d350
jmp 0x1800d6be0
mov ecx, eax
and cl, 0x1f
movzx ebp, cl
movzx edx, byte [rbx + r8 + 1]
and edx, 0x3f
cmp al, 0xdf
jbe 0x1800d6d67
movzx ecx, byte [rbx + r8 + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
cmp al, 0xf0
jb 0x1800d6d79
movzx eax, byte [rbx + r8 + 3]
and ebp, 7
shl ebp, 0x12
shl ecx, 6
and eax, 0x3f
or eax, ecx
or ebp, eax
cmp ebp, 0x80
jb 0x1800d6ced
jmp 0x1800d6d8a
shl ebp, 6
or ebp, edx
cmp ebp, 0x80
jae 0x1800d6d8a
jmp 0x1800d6ced
shl ebp, 0xc
or ebp, ecx
cmp ebp, 0x80
jb 0x1800d6ced
mov dword [rsp + 0x50], 0
mov eax, ebp
cmp ebp, 0x800
jae 0x1800d6dba
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x50], al
and bpl, 0x3f
or bpl, 0x80
mov byte [rsp + 0x51], bpl
mov r13d, 2
jmp 0x1800d6e23
cmp ebp, 0x10000
jae 0x1800d6ded
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x50], al
mov eax, ebp
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x51], al
and bpl, 0x3f
or bpl, 0x80
mov byte [rsp + 0x52], bpl
mov r13d, 3
jmp 0x1800d6e23
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x50], al
mov eax, ebp
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x51], al
mov eax, ebp
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x52], al
and bpl, 0x3f
or bpl, 0x80
mov byte [rsp + 0x53], bpl
mov r13d, 4
mov rax, qword [r12 + 0x88]
mov rbp, qword [r12 + 0x98]
sub rax, rbp
cmp rax, r13
jb 0x1800d6e73
mov rcx, qword [r12 + 0x90]
add rcx, rbp
lea rdx, [rsp + 0x50]
mov r8, r13
call fcn.1801f0cd0
add rbp, r13
mov qword [r12 + 0x98], rbp
mov rcx, r14
call fcn.1800c8bb0
test al, al
jne 0x1800d6c07
jmp 0x1800d6f00
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, qword [rsp + 0x38]
mov rdx, rbp
mov r8, r13
call fcn.1801f1b30
mov rbp, qword [r12 + 0x98]
jmp 0x1800d6e3b
movzx eax, byte [rbx]
test al, al
jns 0x1800d6b7f
mov ecx, eax
and cl, 0x1f
movzx ecx, cl
movzx r9d, byte [rbx + r8 + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x1800d6fab
movzx edx, byte [rbx + r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp al, 0xf0
jb 0x1800d70c8
movzx r9d, byte [rbx + r8 + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and r9d, 0x3f
or r9d, edx
or ecx, r9d
cmp ecx, 0x7b
je 0x1800d6b8b
jmp 0x1800d6fba
mov r8, qword [r15]
cmp r8, rdi
jne 0x1800d6f66
mov rax, qword [r15 + 0x10]
mov qword [rsp + 0x78], rax
movups xmm0, xmmword [r15]
movups xmmword [rsp + 0x68], xmm0
movups xmm0, xmmword [r15]
movaps xmmword [rsp + 0x50], xmm0
mov rax, qword [r15 + 0x10]
mov qword [rsp + 0x60], rax
test rdi, rdi
js 0x1800d7aa0
je 0x1800d708f
movzx eax, byte [0x180281288]
mov r15d, 1
mov edx, 1
mov rcx, rdi
call fcn.180057670
test rax, rax
je 0x1800d7aa3
mov r14, rax
jmp 0x1800d7095
test r8, r8
je 0x1800d715f
cmp r8, rdi
jae 0x1800d7a86
movzx ecx, byte [rbx + r8]
cmp cl, 0xbf
jle 0x1800d7a86
test cl, cl
js 0x1800d716a
movzx eax, cl
jmp 0x1800d71cd
shl ecx, 0xc
or edx, ecx
mov eax, edx
cmp eax, 0x50
je 0x1800d695c
jmp 0x1800d7a84
shl ecx, 6
or ecx, r9d
cmp ecx, 0x7b
je 0x1800d6b8b
mov rcx, qword [r15 + 0x10]
mov qword [rsp + 0x120], rcx
movups xmm0, xmmword [r15]
movaps xmmword [rsp + 0x110], xmm0
test r8, r8
je 0x1800d6fe8
cmp r8, rdi
jae 0x1800d7a86
cmp al, 0xbf
jle 0x1800d7a86
test al, al
js 0x1800d703f
movzx ebp, al
cmp ebp, 0x5c
jne 0x1800d70e9
lea rcx, [rsp + 0x50]
mov rdx, r14
call fcn.1800c9890
test rdi, rdi
js 0x1800d7aa0
je 0x1800d7118
movzx eax, byte [0x180281288]
mov r15d, 1
mov edx, 1
mov rcx, rdi
call fcn.180057670
test rax, rax
je 0x1800d7aa3
mov r14, rax
jmp 0x1800d711e
mov ecx, eax
and cl, 0x1f
movzx ebp, cl
movzx edx, byte [rbx + r8 + 1]
and edx, 0x3f
cmp al, 0xdf
jbe 0x1800d70db
movzx ecx, byte [rbx + r8 + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
cmp al, 0xf0
jb 0x1800d71ad
movzx eax, byte [rbx + r8 + 3]
and ebp, 7
shl ebp, 0x12
shl ecx, 6
and eax, 0x3f
or eax, ecx
or ebp, eax
cmp ebp, 0x5c
je 0x1800d6ff8
jmp 0x1800d70e9
mov r14d, 1
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call fcn.1801f0cd0
movaps xmm0, xmmword [rsp + 0x50]
movaps xmm1, xmmword [rsp + 0x60]
movaps xmm2, xmmword [rsp + 0x70]
movups xmmword [rsi + 0x50], xmm0
movups xmmword [rsi + 0x60], xmm1
movups xmmword [rsi + 0x70], xmm2
mov eax, 0xa
jmp 0x1800d714c
shl ecx, 0xc
or ecx, edx
cmp ecx, 0x7b
je 0x1800d6b8b
jmp 0x1800d6fba
shl ebp, 6
or ebp, edx
cmp ebp, 0x5c
je 0x1800d6ff8
movabs r13, 0x8000000000000000
mov rcx, r14
call fcn.1800c8bb0
lea rbx, [rsp + 0x110]
test al, al
je 0x1800d710f
mov rcx, r14
call fcn.1800c8de0
mov ecx, dword [rsp + 0x34]
jmp 0x1800d798b
mov r14d, 1
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call fcn.1801f0cd0
movups xmm0, xmmword [rsp + 0x50]
movups xmm1, xmmword [rsp + 0x60]
movups xmm2, xmmword [rsp + 0x70]
movups xmmword [rsi + 0x50], xmm0
movups xmmword [rsi + 0x60], xmm1
movups xmmword [rsi + 0x70], xmm2
mov eax, 0x1f
mov qword [rsi], rdi
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], rdi
mov dword [rsi + 0x18], eax
jmp 0x1800d6b3c
movzx ecx, byte [rbx]
test cl, cl
jns 0x1800d6f8e
mov eax, ecx
and al, 0x1f
movzx eax, al
movzx r9d, byte [rbx + r8 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x1800d71c0
movzx edx, byte [rbx + r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp cl, 0xf0
jb 0x1800d71c8
movzx ecx, byte [rbx + r8 + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or eax, ecx
jmp 0x1800d71cd
shl ebp, 0xc
or ebp, ecx
cmp ebp, 0x5c
je 0x1800d6ff8
jmp 0x1800d70e9
shl eax, 6
or eax, r9d
jmp 0x1800d71cd
shl eax, 0xc
or eax, edx
cmp eax, 0x7d
jne 0x1800d7a84
mov rcx, r14
call fcn.1800c8bb0
mov rdi, qword [r12 + 0x90]
mov r8, qword [r12 + 0x98]
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x20], 2
lea r9, [0x18020cd88]
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.1801d3700
cmp qword [rsp + 0x50], 0
mov qword [rsp + 0xd0], rdi
je 0x1800d7367
mov r11, qword [rsp + 0x88]
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0xb0]
lea rax, [rcx - 1]
mov r8, qword [rsp + 0xa0]
mov r9, qword [rsp + 0xa8]
cmp r11, 0xffffffffffffffff
mov qword [rsp + 0xd8], rax
je 0x1800d73ae
mov rdx, qword [rsp + 0x78]
lea rbx, [rdx + rax]
cmp rbx, r8
jae 0x1800d7509
mov r10, qword [rsp + 0x70]
mov r14, qword [rsp + 0x58]
mov rax, qword [rsp + 0x68]
mov rdi, rcx
mov qword [rsp + 0xc8], rax
sub rdi, rax
mov qword [rsp + 0xc0], rdi
lea rax, [r14 - 1]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x48]
movzx edi, byte [rax + rbx]
bt r10, rdi
jae 0x1800d72fc
cmp r14, r11
mov r13, r11
cmova r13, r14
lea rbx, [rax + rdx]
nop word cs:[rax + rax]
cmp r13, rcx
jae 0x1800d7318
lea rdi, [rdx + r13]
cmp rdi, r8
jae 0x1800d7a84
lea rdi, [r13 + 1]
movzx ebp, byte [r9 + r13]
cmp bpl, byte [rbx + r13]
mov r13, rdi
je 0x1800d72d0
sub rdx, r14
add rdx, rdi
jmp 0x1800d72ff
add rdx, rcx
xor r11d, r11d
mov rax, qword [rsp + 0xd8]
lea rbx, [rdx + rax]
cmp rbx, r8
jb 0x1800d72a7
jmp 0x1800d7509
mov r13, qword [rsp + 0x38]
nop dword [rax]
lea rdi, [r13 + 1]
cmp r11, rdi
jae 0x1800d7873
cmp r13, rcx
jae 0x1800d7a84
lea rdi, [rdx + r13]
cmp rdi, r8
jae 0x1800d7a84
movzx edi, byte [r9 + r13]
lea rbp, [r13 - 1]
cmp dil, byte [rbx + r13]
mov r13, rbp
je 0x1800d7320
add rdx, qword [rsp + 0xc8]
mov r11, qword [rsp + 0xc0]
jmp 0x1800d7302
cmp byte [rsp + 0x6a], 0
jne 0x1800d7509
mov r8, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa0]
movzx eax, byte [rsp + 0x68]
test r8, r8
je 0x1800d74f5
cmp r8, rdi
jae 0x1800d74ef
cmp byte [rcx + r8], 0xc0
jge 0x1800d74f5
jmp 0x1800d7a89
mov rdx, qword [rsp + 0x78]
lea r13, [rdx + rax]
cmp r13, r8
jae 0x1800d7509
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xc8], rax
mov r10, qword [rsp + 0x58]
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x100], rax
lea rax, [r10 - 1]
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0x48]
lea rbx, [rax + r10]
lea r11, [r9 + r10]
dec r11
mov qword [rsp + 0x38], r11
add r9, r10
add rax, r10
dec rax
mov qword [rsp + 0x108], rax
mov r11, r10
neg r11
jmp 0x1800d7437
add rdx, rcx
mov rdi, rdx
mov rax, qword [rsp + 0xd8]
lea r13, [rdi + rax]
mov rdx, rdi
cmp r13, r8
jae 0x1800d7509
mov rax, qword [rsp + 0x48]
movzx edi, byte [rax + r13]
mov rax, qword [rsp + 0xc8]
bt rax, rdi
jae 0x1800d7419
xor r13d, r13d
mov r14, rdx
nop word cs:[rax + rax]
lea rdi, [r10 + r13]
cmp rdi, rcx
jae 0x1800d748d
lea rax, [r10 + r14]
cmp rax, r8
jae 0x1800d7a84
movzx eax, byte [r9 + r13]
lea rdi, [r14 + 1]
inc r13
cmp al, byte [rbx + r14]
mov r14, rdi
je 0x1800d7460
jmp 0x1800d741f
mov rax, qword [rsp + 0xc0]
cmp rax, rcx
jae 0x1800d7a7b
mov rdi, qword [rsp + 0x108]
lea r14, [rdi + rdx]
lea r13, [rax + rdx]
xor edi, edi
cmp r11, rdi
je 0x1800d7873
mov rbp, rdx
lea rdx, [rdi + r13]
cmp rdx, r8
jae 0x1800d7a84
mov rax, qword [rsp + 0x38]
movzx edx, byte [rax + rdi]
lea rax, [rdi - 1]
cmp dl, byte [r14 + rdi]
mov rdi, rax
mov rdx, rbp
je 0x1800d74b0
add rdx, qword [rsp + 0x100]
jmp 0x1800d741c
jne 0x1800d7a89
cmp r8, rdi
jne 0x1800d7638
mov rdx, r8
test al, al
jne 0x1800d7873
xor r13d, r13d
mov rbp, qword [rsp + 0x40]
mov rbx, qword [rsp + 0xd0]
jmp 0x1800d7524
cmp rbp, r13
jb 0x1800d75c3
mov r8, rbp
sub r8, r13
lea rax, [rbx + r13]
cmp r8, 0xf
ja 0x1800d7550
cmp rbp, r13
je 0x1800d75c3
xor edx, edx
nop
cmp byte [rax + rdx], 0x3a
je 0x1800d7560
inc rdx
cmp r8, rdx
jne 0x1800d7540
jmp 0x1800d75c3
mov cl, 0x3a
mov rdx, rax
call fcn.1801d2a90
cmp rax, 1
jne 0x1800d75c3
lea r9, [rdx + r13]
add r13, rdx
inc r13
cmp r9, rbp
jae 0x1800d751b
cmp byte [rbx + r9], 0x3a
jne 0x1800d751b
test r9, r9
mov rdi, r9
je 0x1800d77bd
cmp r9, rbp
ja 0x1800d7ad8
test r9, r9
js 0x1800d7ae6
mov rcx, r9
movzx eax, byte [0x180281288]
mov ebp, 1
mov edx, 1
call fcn.180057670
test rax, rax
je 0x1800d7ae8
mov rcx, rax
mov rbp, qword [rsp + 0x40]
jmp 0x1800d77c2
xor edi, edi
jmp 0x1800d75d6
add rdi, rdx
inc rdi
cmp rbp, rdi
jb 0x1800d769e
mov r8, rbp
sub r8, rdi
lea rax, [rbx + rdi]
cmp r8, 0xf
ja 0x1800d7613
cmp rbp, rdi
je 0x1800d769e
xor edx, edx
nop word cs:[rax + rax]
cmp byte [rax + rdx], 0x3d
je 0x1800d7623
inc rdx
cmp r8, rdx
jne 0x1800d7600
jmp 0x1800d769e
mov cl, 0x3d
mov rdx, rax
call fcn.1801d2a90
cmp rax, 1
jne 0x1800d7699
lea r13, [rdx + rdi]
cmp r13, rbp
jae 0x1800d75c7
cmp byte [rbx + r13], 0x3d
jne 0x1800d75c7
jmp 0x1800d7715
movzx edx, byte [rcx + r8]
test dl, dl
jns 0x1800d7868
mov r9d, edx
and r9d, 0x1f
movzx r11d, byte [rcx + r8 + 1]
and r11d, 0x3f
cmp dl, 0xe0
jb 0x1800d77ae
movzx r10d, byte [rcx + r8 + 2]
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
cmp dl, 0xf0
jb 0x1800d785e
movzx edx, byte [rcx + r8 + 3]
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and edx, 0x3f
or edx, r10d
or edx, r9d
jmp 0x1800d7868
test rax, rax
jne 0x1800d7715
test rbp, rbp
js 0x1800d7aae
je 0x1800d76d1
movzx eax, byte [0x180281288]
mov r14d, 1
mov edx, 1
mov rcx, rbp
call fcn.180057670
test rax, rax
je 0x1800d7ab1
mov rcx, rax
jmp 0x1800d76d6
mov ecx, 1
mov rdx, rbx
mov r8, rbp
mov rdi, rcx
call fcn.1801f0cd0
mov r8, rdi
mov r14, rbp
shr r14, 0x20
movabs r13, 0x8000000000000000
mov ebp, 0
add byte [rax], al
add byte [rax], al
or byte [rcx - 0x7d], 0xcd
invalid
mov rcx, r13
mov rdx, rbx
mov r8, rbp
call fcn.18009f340
mov r8, rdx
lea rcx, [rsp + 0x50]
mov rdx, rax
call fcn.180010e30
mov r8, rbp
call 0x1d031e3c5
shl r9d, 6
or r9d, r11d
mov edx, r9d
jmp 0x1800d7868
mov ecx, 1
mov qword [rsp + 0x38], rcx
mov rdx, rbx
mov r8, rdi
call fcn.1801f0cd0
cmp rbp, r13
jbe 0x1800d77ef
cmp byte [rbx + r13], 0xbf
jg 0x1800d77f1
mov rcx, rbx
mov rdx, rbp
mov r8, r13
mov r9, rbp
call fcn.18018dc30
jne 0x1800d77de
sub rbp, r13
js 0x1800d7aae
je 0x1800d7827
movzx eax, byte [0x180281288]
mov r14d, 1
mov edx, 1
mov rcx, rbp
call fcn.180057670
test rax, rax
je 0x1800d7ab1
mov rcx, rax
mov r14, rdi
jmp 0x1800d782f
mov r14, rdi
mov ecx, 1
shr r14, 0x20
add rbx, r13
mov rdx, rbx
shl r9d, 0xc
or r10d, r9d
mov edx, r10d
test al, al
je 0x1800d7a1d
mov rdx, r8
test rdx, rdx
mov rbp, rdx
je 0x1800d78a4
mov rdi, qword [rsp + 0x40]
cmp rdx, rdi
mov rbx, qword [rsp + 0xd0]
jae 0x1800d78b8
cmp byte [rbx + rdx], 0xbf
jg 0x1800d78ba
mov rcx, rbx
mov r9, rdx
mov rdx, rdi
xor r8d, r8d
call fcn.18018dc30
mov ecx, 1
mov rdi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0xd0]
jmp 0x1800d78e9
jne 0x1800d7893
test rdx, rdx
js 0x1800d7aca
mov rcx, rdx
movzx eax, byte [0x180281288]
mov r13d, 1
mov edx, 1
call fcn.180057670
test rax, rax
je 0x1800d7acd
mov rcx, rax
mov qword [rsp + 0x38], rcx
mov rdx, rbx
mov r14, rbp
mov r8, rbp
call fcn.1801f0cd0
lea r13, [rbp + 2]
cmp rdi, r13
jbe 0x1800d791d
cmp byte [rbx + r13], 0xbf
jg 0x1800d791f
mov rcx, rbx
mov rdx, rdi
mov r8, r13
mov r9, rdi
call fcn.18018dc30
jne 0x1800d790c
sub rdi, r13
js 0x1800d7abc
je 0x1800d7955
movzx eax, byte [0x180281288]
mov r14d, 1
mov edx, 1
mov rcx, rdi
call fcn.180057670
test rax, rax
je 0x1800d7abf
mov rcx, rax
mov ecx, 1
mov eax, 1
cmp edx, 0x80
jb 0x1800d7a46
mov eax, 2
cmp edx, 0x800
jb 0x1800d7a46
cmp edx, 0x10000
mov eax, 4
sbb rax, 0
add r8, rax
mov rdx, rdi
je 0x1800d7a5e
cmp r8, rdx
jae 0x1800d7a5c
cmp byte [rcx + r8], 0xbf
jg 0x1800d7a5e
jmp 0x1800d7a89
jne 0x1800d7a89
cmp r8, rdx
je 0x1800d7873
movzx eax, byte [rcx + r8]
test al, al
jns 0x1800d7870
cmp al, 0xe0
jmp 0x1800d7870
test r10, r10
je 0x1800d7873
ud2
mov rcx, rbx
mov rdx, rdi
mov r9, rdi
call fcn.18018dc30
lea rcx, str.C:Userslucak.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_syntax_0.8.5_src_astparse.rs
call fcn.18018dc30
xor r15d, r15d
mov rcx, r15
mov rdx, rdi
call fcn.18018dc30
xor r14d, r14d
mov rcx, r14
mov rdx, rbp
call fcn.18018dc30
xor r14d, r14d
mov rcx, r14
mov rdx, rdi
call fcn.18018dc30
xor r13d, r13d
mov rcx, r13
mov rdx, rbp
call fcn.18018dc30
mov rcx, rbx
mov rdx, rbp
xor r8d, r8d
call fcn.18018dc30
xor ebp, ebp
mov rcx, rbp
mov rdx, rdi
call fcn.18018dc30
int3