Function at 0x1402a9631
Capabilities:
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x178
mov rdi, r9
mov r14, r8
mov r15, rdx
mov rsi, rcx
lea rax, [rdx + r8]
xor r9d, r9d
mov rcx, rdx
cmp rcx, rax
je 0x1402a96f6
mov r8, r9
movzx edx, byte [rcx]
test dl, dl
js 0x1402a9673
lea r10, [rcx + 1]
jmp 0x1402a96df
mov r9d, edx
and r9d, 0x1f
movzx ebx, byte [rcx + 1]
and ebx, 0x3f
cmp dl, 0xdf
jbe 0x1402a96c1
movzx r11d, byte [rcx + 2]
shl ebx, 6
and r11d, 0x3f
or r11d, ebx
cmp dl, 0xf0
jb 0x1402a96d1
movzx edx, byte [rcx + 3]
and r9d, 7
shl r9d, 0x12
shl r11d, 6
and edx, 0x3f
or edx, r11d
or edx, r9d
cmp edx, 0x110000
je 0x1402a96f6
lea r10, [rcx + 4]
jmp 0x1402a96df
lea r10, [rcx + 2]
shl r9d, 6
or r9d, ebx
mov edx, r9d
jmp 0x1402a96df
lea r10, [rcx + 3]
shl r9d, 0xc
or r11d, r9d
mov edx, r11d
mov r9, r8
sub r9, rcx
add r9, r10
mov rcx, r10
cmp edx, 0x21
jb 0x1402a965a
jmp 0x1402a96f9
mov r8, r14
mov rdx, r14
sub rdx, r8
je 0x1402a9724
lea rcx, [r15 + r8]
mov r10d, 0x2600
movzx r9d, byte [r15 + r8]
cmp r9d, 0xd
ja 0x1402a9752
bt r10d, r9d
jae 0x1402a9752
inc r8
cmp r14, r8
jne 0x1402a970b
mov rdx, qword [rdi + 0x60]
mov rax, qword [rdi + 0x68]
mov qword [rsp + 0x20], rdi
mov rcx, rsi
mov r8, r15
mov r9, r14
call qword [rax + 0x28]
nop
add rsp, 0x178
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r10d, [r9 - 0x41]
cmp r10b, 0x1a
setb r10b
shl r10b, 5
or r10b, r9b
cmp r10b, 0x64
jne 0x1402a9724
lea r9, [r15 + r8]
inc r9
cmp r9, rax
je 0x1402a9724
mov r9, r14
neg r9
mov r10d, 0x2600
movzx r11d, byte [r15 + r8 + 1]
cmp r11d, 0xd
ja 0x1402a97aa
bt r10d, r11d
jae 0x1402a97aa
lea r11, [r9 + r8]
inc r11
inc r8
cmp r11, 0xffffffffffffffff
jne 0x1402a9783
jmp 0x1402a9724
lea r9d, [r11 - 0x41]
cmp r9b, 0x1a
setb r9b
shl r9b, 5
or r9b, r11b
cmp r9b, 0x61
jne 0x1402a9724
lea r9, [r15 + r8]
add r9, 2
cmp r9, rax
je 0x1402a9724
lea r9, [r15 + r8]
add r9, 5
sub r8, r14
add r8, 4
mov r10d, 0x2600
movzx r11d, byte [r9 - 3]
cmp r11d, 0xd
ja 0x1402a980f
bt r10d, r11d
jae 0x1402a980f
inc r9
inc r8
cmp r8, 2
jne 0x1402a97ed
jmp 0x1402a9724
lea r10d, [r11 - 0x41]
cmp r10b, 0x1a
setb r10b
shl r10b, 5
or r10b, r11b
cmp r10b, 0x74
jne 0x1402a9724
lea r10, [r9 - 2]
cmp r10, rax
je 0x1402a9724
mov r10d, 0x2600
movzx r11d, byte [r9 - 2]
cmp r11d, 0xd
ja 0x1402a9861
bt r10d, r11d
jae 0x1402a9861
inc r9
inc r8
cmp r8, 1
jne 0x1402a983f
jmp 0x1402a9724
lea r10d, [r11 - 0x41]
cmp r10b, 0x1a
setb r10b
shl r10b, 5
or r10b, r11b
cmp r10b, 0x61
jne 0x1402a9724
lea r10, [r9 - 1]
cmp r10, rax
je 0x1402a9724
neg r8
movzx r10d, byte [r9 - 1]
lea r11d, [r10 - 9]
cmp r11d, 2
jb 0x1402a98a3
cmp r10d, 0xd
jne 0x1402a98b0
inc r9
dec r8
jne 0x1402a988e
jmp 0x1402a9724
cmp r10d, 0x3a
jne 0x1402a9724
mov r8, rdx
sub r8, rax
add r8, r9
je 0x1402a98d9
mov rax, rdx
sub rax, r8
jbe 0x1402a98de
cmp byte [rcx + r8], 0xbf
jg 0x1402a98e4
jmp 0x1402aa50d
mov rax, rdx
jmp 0x1402a98e4
jne 0x1402aa50d
add rcx, r8
mov rdx, rax
call fcn.140086183
test rax, rax
je 0x1402a9724
mov rcx, rdx
xor r13d, r13d
cmp rcx, r13
je 0x1402a9724
mov r9, r13
movzx r8d, byte [rax + r13]
cmp r8d, 0x23
je 0x1402a9724
lea r13, [r9 + 1]
cmp r8d, 0x2c
jne 0x1402a98fe
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x38], rcx
test r9, r9
je 0x1402a994a
cmp r9, qword [rsp + 0x38]
jae 0x1402a9952
mov rax, qword [rsp + 0x48]
cmp byte [rax + r9], 0xbf
jg 0x1402a9970
jmp 0x1402aa54d
mov r13d, 1
jmp 0x1402a9970
jne 0x1402aa54d
mov r13, qword [rsp + 0x38]
inc r13
jne 0x1402a9970
xor r13d, r13d
mov qword [rsp + 0x38], 0xffffffffffffffff
jmp 0x1402a9991
sub qword [rsp + 0x38], r13
jbe 0x1402a9988
mov rax, qword [rsp + 0x48]
cmp byte [rax + r13], 0xc0
jge 0x1402a9991
jmp 0x1402aa531
jne 0x1402aa531
mov r13, rdx
mov rcx, qword [rsp + 0x48]
mov rdx, r9
call fcn.140085fed
mov rbp, rax
mov r12, rdx
mov qword [rsp + 0x58], rax
test rdx, rdx
je 0x1402a9a61
mov qword [rsp + 0x50], rbp
lea rax, [r12 + rbp]
lea rcx, [r12 + rbp]
dec rcx
xor edx, edx
movzx r8d, byte [rcx + rdx]
lea r9d, [r8 - 9]
cmp r9d, 2
jb 0x1402a99d9
cmp r8d, 0xd
jne 0x1402a99e6
dec rdx
mov r8, r12
add r8, rdx
jne 0x1402a99c4
jmp 0x1402a9a61
cmp r8d, 0x34
jne 0x1402a9a61
add rcx, rdx
cmp rcx, rbp
je 0x1402a9a61
lea rcx, [r12 + rbp]
add rcx, 0xfffffffffffffffe
movzx r8d, byte [rcx + rdx]
lea r9d, [r8 - 9]
cmp r9d, 2
jb 0x1402a9a11
cmp r8d, 0xd
jne 0x1402a9a23
lea r8, [r12 + rdx]
dec r8
dec rdx
cmp r8, 1
jne 0x1402a99fc
jmp 0x1402a9a61
cmp r8d, 0x36
jne 0x1402a9a61
add rcx, rdx
cmp rcx, rbp
je 0x1402a9a61
mov ecx, 2
sub rcx, r12
mov r9d, 0x2600
movzx r8d, byte [rax + rdx - 3]
cmp r8d, 0xd
ja 0x1402aa3a9
bt r9d, r8d
jae 0x1402aa3a9
dec rdx
cmp rcx, rdx
jne 0x1402a9a3f
xor eax, eax
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
test rax, rax
cmovne rbp, rax
cmove rbx, r12
xor eax, eax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 1
mov qword [rsp + 0x68], rax
test rbx, rbx
je 0x1402a9b80
cmp byte [rbp], 0x3b
jne 0x1402a9ab4
lea rdx, [0x1403aff8a]
lea r8, [0x1403aff94]
lea rcx, [rsp + 0x58]
call fcn.140085ef1
add rbx, rbp
mov dword [rsp + 0x40], 0
mov eax, 0x2600
movzx r12d, byte [rbp]
inc rbp
cmp r12d, 0xd
ja 0x1402a9ae2
bt eax, r12d
jae 0x1402a9ae2
cmp rbp, rbx
jne 0x1402a9ac4
jmp 0x1402a9b80
lea eax, [r12 - 0x7f]
cmp al, 0xa1
jb 0x1402a9b65
cmp r12d, 0x3b
jle 0x1402a9b24
cmp r12d, 0x3c
je 0x1402a9b30
cmp r12d, 0x3e
je 0x1402a9b30
cmp r12d, 0x3f
jne 0x1402a9b37
mov rdx, qword [rsp + 0x68]
mov al, 1
mov dword [rsp + 0x40], eax
mov r12b, 0x3f
cmp rdx, qword [rsp + 0x58]
jne 0x1402a9b52
lea rcx, [rsp + 0x58]
call fcn.140273052
jmp 0x1402a9b4d
cmp r12d, 0x20
je 0x1402a9b30
cmp r12d, 0x22
jne 0x1402a9b37
test byte [rsp + 0x40], 1
jne 0x1402a9b65
mov rdx, qword [rsp + 0x68]
cmp rdx, qword [rsp + 0x58]
jne 0x1402a9b52
lea rcx, [rsp + 0x58]
call fcn.140273052
mov rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x60]
mov byte [rax + rdx], r12b
inc rdx
mov qword [rsp + 0x68], rdx
jmp 0x1402a9b72
mov ecx, r12d
lea rdx, [rsp + 0x58]
call fcn.14008729b
cmp rbp, rbx
mov eax, 0x2600
jne 0x1402a9ac4
mov rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0xf0]
call fcn.14008643e
movabs rax, 0x8000000000000000
mov rcx, qword [rsp + 0xf0]
mov qword [rsp + 0x40], rcx
cmp rcx, rax
jne 0x1402a9caa
mov ecx, 4
call fcn.1401a6baf
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x90], rdx
mov rax, qword [rsp + 0x90]
mov dword [rax], 0x74786574
mov ecx, 5
call fcn.1401a6baf
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x88], rdx
mov rax, qword [rsp + 0x88]
mov byte [rax + 4], 0x6e
mov dword [rax], 0x69616c70
mov al, byte [0x1403f9274]
mov ecx, 0x30
mov edx, 8
call fcn.140061500
test rax, rax
je 0x1402aa566
mov rbx, rax
mov ecx, 7
call fcn.1401a6baf
mov rbp, rax
mov r12, rdx
mov dword [rdx + 3], 0x74657372
mov dword [rdx], 0x72616863
mov ecx, 8
call fcn.1401a6baf
movabs rcx, 0x49494353412d5355
mov qword [rdx], rcx
mov qword [rbx], rbp
mov qword [rbx + 8], r12
mov qword [rbx + 0x10], 7
mov qword [rbx + 0x18], rax
mov qword [rbx + 0x20], rdx
mov qword [rbx + 0x28], 8
mov eax, 1
mov qword [rsp + 0xe8], rax
mov eax, 4
mov qword [rsp + 0xe0], rax
mov eax, 5
mov qword [rsp + 0xd8], rax
mov ebp, 1
jmp 0x1402a9d1a
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0xe8], rax
mov rbx, qword [rsp + 0x128]
mov rbp, qword [rsp + 0x130]
cmp qword [rsp + 0x50], 0
setne r12b
cmp qword [rsp + 0x58], 0
je 0x1402a9d3f
mov r8, qword [rsp + 0x60]
mov rcx, qword [0x1403f9220]
xor edx, edx
call fcn.1402e3f64
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x48]
je 0x1402a9724
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0xf0], rdx
mov rdx, qword [rsp + 0x90]
mov qword [rsp + 0xf8], rdx
mov rdx, qword [rsp + 0xe0]
mov qword [rsp + 0x100], rdx
mov rdx, qword [rsp + 0x98]
mov qword [rsp + 0x108], rdx
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0x110], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x118], rdx
mov rdx, qword [rsp + 0xe8]
mov qword [rsp + 0x120], rdx
mov qword [rsp + 0x128], rbx
mov qword [rsp + 0x130], rbp
lea r14, [rcx + r13]
mov qword [rsp + 0x138], r14
mov qword [rsp + 0x140], rax
mov byte [rsp + 0x148], r12b
mov eax, dword [rsp + 0x151]
mov dword [rsp + 0x149], eax
mov eax, dword [rsp + 0x154]
mov dword [rsp + 0x14c], eax
xor eax, eax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 1
mov qword [rsp + 0x68], rax
cmp qword [rsp + 0x50], 0
je 0x1402a9fb0
lea rax, [rsp + 0x58]
mov qword [rsp + 0xa0], rax
mov dword [rsp + 0xa8], 0
mov word [rsp + 0xac], 0
cmp qword [rsp + 0x38], 0
je 0x1402aa0f8
mov rax, qword [rsp + 0x48]
lea rbp, [rax + r13]
add rbp, 2
xor r12d, r12d
xor r15d, r15d
mov rbx, r15
inc r15
movzx r13d, byte [rbp + rbx - 2]
cmp r13, 0x25
ja 0x1402a9f95
movabs rax, 0x2800002600
bt rax, r13
jae 0x1402a9f95
mov r8, rbx
sub r8, r12
jbe 0x1402a9ecb
cmp rbx, qword [rsp + 0x38]
ja 0x1402aa51b
lea rdx, [r14 + r12]
lea rcx, [rsp + 0xa0]
call fcn.14008634c
cmp al, 4
jne 0x1402aa325
cmp r13d, 0x25
je 0x1402a9ee3
mov r12, r15
cmp r13d, 0x23
jne 0x1402a9f95
jmp 0x1402aa299
lea rdx, [rbx + 2]
xor ecx, ecx
cmp rdx, qword [rsp + 0x38]
jae 0x1402a9f1d
movzx edx, byte [rbp + rbx]
lea eax, [rdx - 0x30]
mov ecx, 1
cmp eax, 0xa
jb 0x1402a9f1d
or edx, 0x20
add edx, 0xffffff9f
add edx, 0xa
mov eax, 0xffffffff
cmovb edx, eax
xor ecx, ecx
cmp edx, 0x10
setb cl
mov eax, edx
cmp r15, qword [rsp + 0x38]
jae 0x1402a9f95
movzx r8d, byte [rbp + rbx - 1]
lea edx, [r8 - 0x30]
mov r9b, 1
cmp edx, 0xa
jb 0x1402a9f56
or r8d, 0x20
add r8d, 0xffffff9f
add r8d, 0xa
mov edx, 0xffffffff
cmovb r8d, edx
cmp r8d, 0x10
setb r9b
mov edx, r8d
test r9b, r9b
je 0x1402a9f95
test ecx, ecx
je 0x1402a9f95
shl dl, 4
add al, dl
mov byte [rsp + 0xc0], al
mov r8d, 1
lea rcx, [rsp + 0xa0]
lea rdx, [rsp + 0xc0]
call fcn.14008634c
cmp al, 4
jne 0x1402aa325
add rbx, 3
mov r12, rbx
cmp qword [rsp + 0x38], r15
jne 0x1402a9e75
cmp r12, qword [rsp + 0x38]
jbe 0x1402aa0fb
jmp 0x1402aa0df
cmp qword [rsp + 0x38], 0
je 0x1402aa156
xor r12d, r12d
movabs r13, 0x2800002600
xor r15d, r15d
mov rbx, r15
inc r15
movzx ebp, byte [r14 + rbx]
cmp rbp, 0x25
ja 0x1402aa0cd
bt r13, rbp
jae 0x1402aa0cd
cmp rbx, r12
jbe 0x1402aa00d
cmp rbx, qword [rsp + 0x38]
ja 0x1402aa51b
lea rdx, [r14 + r12]
lea r8, [r14 + rbx]
lea rcx, [rsp + 0x58]
call fcn.140085ef1
cmp ebp, 0x25
je 0x1402aa023
mov r12, r15
cmp ebp, 0x23
jne 0x1402aa0cd
jmp 0x1402aa363
lea rdx, [rbx + 2]
xor ecx, ecx
cmp rdx, qword [rsp + 0x38]
jae 0x1402aa05e
movzx edx, byte [r14 + rbx + 2]
lea eax, [rdx - 0x30]
mov ecx, 1
cmp eax, 0xa
jb 0x1402aa05e
or edx, 0x20
add edx, 0xffffff9f
add edx, 0xa
mov eax, 0xffffffff
cmovb edx, eax
xor ecx, ecx
cmp edx, 0x10
setb cl
mov eax, edx
cmp r15, qword [rsp + 0x38]
jae 0x1402aa0cd
movzx r8d, byte [r14 + rbx + 1]
lea edx, [r8 - 0x30]
mov r9b, 1
cmp edx, 0xa
jb 0x1402aa097
or r8d, 0x20
add r8d, 0xffffff9f
add r8d, 0xa
mov edx, 0xffffffff
cmovb r8d, edx
cmp r8d, 0x10
setb r9b
mov edx, r8d
test r9b, r9b
je 0x1402aa0cd
test ecx, ecx
je 0x1402aa0cd
shl dl, 4
add al, dl
mov byte [rsp + 0xa0], al
lea rcx, [rsp + 0x58]
lea rdx, [rsp + 0xa0]
lea r8, [rsp + 0xa1]
call fcn.140085ef1
add rbx, 3
mov r12, rbx
cmp qword [rsp + 0x38], r15
jne 0x1402a9fcc
cmp r12, qword [rsp + 0x38]
jbe 0x1402aa159
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_data_url_0.3.1_src_lib.rs
mov rcx, r12
mov rdx, qword [rsp + 0x38]
call fcn.140079340
jmp 0x1402aa5ab
xor r12d, r12d
mov r8, qword [rsp + 0x38]
sub r8, r12
add r14, r12
lea rcx, [rsp + 0xa0]
mov rdx, r14
call fcn.14008634c
cmp al, 4
jne 0x1402aa325
mov cl, byte [rsp + 0xac]
movzx eax, byte [rsp + 0xad]
ror cl, 1
cmp cl, 9
je 0x1402aa2e8
movzx ecx, cl
cmp ecx, 6
je 0x1402aa2b4
test ecx, ecx
jne 0x1402aa325
test eax, eax
jne 0x1402aa325
jmp 0x1402aa171
xor r12d, r12d
mov r8, qword [rsp + 0x38]
add r8, r14
add r12, r14
lea rcx, [rsp + 0x58]
mov rdx, r12
call fcn.140085ef1
mov r13, qword [rsp + 0x58]
movabs rax, 0x8000000000000000
cmp r13, rax
je 0x1402aa340
lea rdx, [rsp + 0x58]
mov r14, qword [rdx + 8]
mov rbp, qword [rdx + 0x10]
movups xmm0, xmmword [rsp + 0xf8]
movups xmm1, xmmword [rsp + 0x110]
lea rax, [rsp + 0x158]
movups xmmword [rax], xmm0
lea rcx, [rsp + 0x168]
movups xmmword [rcx], xmm1
lea r8, [rsp + 0xa0]
mov qword [r8], rax
lea rax, [0x140296b1d]
mov qword [r8 + 8], rax
mov qword [r8 + 0x10], rcx
mov qword [r8 + 0x18], rax
lea rax, [0x1403affc8]
mov qword [rdx], rax
mov eax, 2
mov qword [rdx + 8], rax
mov qword [rdx + 0x20], 0
mov qword [rdx + 0x10], r8
mov qword [rdx + 0x18], rax
lea rcx, [rsp + 0xc0]
call fcn.1400777d0
mov r12, qword [rsp + 0xc0]
mov rbx, qword [rsp + 0xc8]
mov r15, qword [rsp + 0xd0]
mov al, byte [0x1403f9274]
mov ecx, 0x28
mov edx, 8
call fcn.140061500
test rax, rax
je 0x1402aa59c
mov ecx, 1
mov qword [rax], rcx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r14
mov qword [rax + 0x20], rbp
mov rdx, qword [rdi + 0x50]
mov rcx, qword [rdi + 0x58]
mov r10, qword [rcx + 0x28]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov r8, rbx
mov r9, r15
call r10
test r12, r12
je 0x1402aa351
mov rcx, qword [0x1403f9220]
xor edx, edx
mov r8, rbx
call fcn.1402e3f64
jmp 0x1402aa351
cmp r15, qword [rsp + 0x38]
jae 0x1402aa377
cmp byte [r14 + r15], 0xbf
jg 0x1402aa11e
jmp 0x1402aa385
test al, 0xfd
jne 0x1402aa325
mov eax, dword [rsp + 0xa8]
shr eax, 4
lea r8, [rsp + 0xc1]
mov byte [r8 - 1], al
mov rcx, qword [rsp + 0xa0]
lea rdx, [rsp + 0xc0]
call fcn.140085ef1
jmp 0x1402aa171
cmp al, 2
jae 0x1402aa325
mov eax, dword [rsp + 0xa8]
mov ecx, eax
shr ecx, 0xa
shr eax, 2
lea r8, [rsp + 0xc2]
mov byte [r8 - 2], cl
mov byte [r8 - 1], al
mov rcx, qword [rsp + 0xa0]
lea rdx, [rsp + 0xc0]
call fcn.140085ef1
jmp 0x1402aa171
cmp qword [rsp + 0x58], 0
je 0x1402aa340
mov r8, qword [rsp + 0x60]
mov rcx, qword [0x1403f9220]
xor edx, edx
call fcn.1402e3f64
movabs rax, 0x8000000000000000
add rax, 3
mov qword [rsi], rax
lea rcx, [rsp + 0xf0]
call fcn.1402b9545
jmp 0x1402a973d
cmp r15, qword [rsp + 0x38]
jae 0x1402aa37f
cmp byte [r14 + r15], 0xbf
jg 0x1402aa171
jmp 0x1402aa385
je 0x1402aa11e
jmp 0x1402aa385
je 0x1402aa171
lea rax, str._m3_
mov qword [rsp + 0x20], rax
mov rcx, r14
mov rdx, qword [rsp + 0x38]
mov r8, r15
mov r9, rdx
call fcn.140080f80
jmp 0x1402aa5ab
lea ecx, [r8 - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, r8b
cmp cl, 0x65
jne 0x1402a9a61
lea rcx, [rax + rdx]
add rcx, 0xfffffffffffffffd
cmp rcx, rbp
je 0x1402a9a61
mov ecx, 5
sub rcx, r12
sub rcx, rdx
add rax, rdx
add rax, 0xfffffffffffffffa
mov edx, 0x2600
movzx r8d, byte [rax + 2]
cmp r8d, 0xd
ja 0x1402aa40c
bt edx, r8d
jae 0x1402aa40c
dec rax
inc rcx
cmp rcx, 2
jne 0x1402aa3ea
jmp 0x1402a9a61
lea edx, [r8 - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, r8b
cmp dl, 0x73
jne 0x1402a9a61
lea rdx, [rax + 2]
cmp rdx, rbp
je 0x1402a9a61
mov edx, 0x2600
movzx r8d, byte [rax + 1]
cmp r8d, 0xd
ja 0x1402aa459
bt edx, r8d
jae 0x1402aa459
dec rax
inc rcx
cmp rcx, 1
jne 0x1402aa437
jmp 0x1402a9a61
lea edx, [r8 - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, r8b
cmp dl, 0x61
jne 0x1402a9a61
lea rdx, [rax + 1]
cmp rdx, rbp
je 0x1402a9a61
mov edx, 0x2600
movzx r8d, byte [rax]
cmp r8d, 0xd
ja 0x1402aa4a1
bt edx, r8d
jae 0x1402aa4a1
dec rax
inc rcx
jne 0x1402aa484
jmp 0x1402a9a61
mov qword [rsp + 0x60], rax
lea eax, [r8 - 0x41]
cmp al, 0x1a
setb al
shl al, 5
or al, r8b
cmp al, 0x62
jne 0x1402a9a61
lea rcx, [rsp + 0x58]
lea rdx, [rsp + 0xf8]
mov qword [rdx - 8], rcx
mov byte [rdx], 0
call fcn.1400862fb
test al, 1
je 0x1402a9a61
cmp dl, 0x3b
jne 0x1402a9a61
mov rbx, qword [rsp + 0x60]
sub rbx, qword [rsp + 0x58]
je 0x1402a9a68
cmp rbx, r12
jae 0x1402aa577
mov rax, qword [rsp + 0x50]
cmp byte [rax + rbx], 0xbf
jg 0x1402a9a68
jmp 0x1402aa57d
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_data_url_0.3.1_src_lib.rs
mov qword [rsp + 0x20], rax
jmp 0x1402aa545
lea r8, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_data_url_0.3.1_src_lib.rs
mov rcx, rbx
mov rdx, qword [rsp + 0x38]
call fcn.14007a270
jmp 0x1402aa5ab
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_data_url_0.3.1_src_lib.rs
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x48]
mov r8, r13
mov r9, rdx
call fcn.140080f80
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_data_url_0.3.1_src_lib.rs
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x48]
xor r8d, r8d
call fcn.140080f80
mov ecx, 8
mov edx, 0x30
call fcn.140077010
jmp 0x1402aa5ab
je 0x1402a9a68
lea rax, str._home_janus_.cargo_registry_src_index.crates.io_6f17d22bba15001f_data_url_0.3.1_src_lib.rs
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x50]
mov rdx, r12
xor r8d, r8d
mov r9, rbx
call fcn.140080f80
mov ecx, 8
mov edx, 0x28
call fcn.140077010
ud2