Function at 0x1401a2500
Capabilities:
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
mov rsi, r9
mov rbp, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xc0]
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rbp
cmp byte [rdx], 0
je 0x1401a25d9
movzx r10d, byte [rdx + 1]
mov byte [rdx], 0
test rsi, rsi
je 0x1401a2db2
cmp rbp, 2
jbe 0x1401a2dc8
movzx eax, byte [r8]
cmp r10b, 0x1f
jbe 0x1401a2dfb
mov r9, rsi
lea r11d, [rax + 0x5f]
lea esi, [r10 - 0x20]
cmp r11b, 0x5e
jae 0x1401a2e0d
mov qword [rsp + 0x30], rdx
movzx eax, sil
imul rdi, rax, 0x5e
movzx eax, r11b
lea rdx, [rdi + rax]
add rdx, 0xfffffffffffffa7e
add rdi, rax
cmp rdx, 0x92e
jae 0x1401a2fbe
lea rax, [0x140310382]
movzx edi, word [rax + rdi*2 - 0xb04]
mov eax, edi
shr eax, 0xc
or al, 0xe0
mov byte [r14], al
mov eax, edi
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [r14 + 1], al
mov r13d, 3
mov eax, 2
mov rsi, r9
jmp 0x1401a2f77
mov qword [rsp + 0x30], rdx
xor r13d, r13d
xor edi, edi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], r8
mov r11, rbp
sub r11, r13
jb 0x1401a3329
lea r10, [r8 + rdi]
mov rdx, rsi
sub rdx, rdi
cmp r11, rdx
mov r15, rdx
cmovb r15, r11
lea r12, [r14 + r13]
mov eax, r10d
xor eax, r12d
test al, 7
mov qword [rsp + 0x38], rbp
jne 0x1401a2635
mov ebx, r10d
neg ebx
and ebx, 7
lea rax, [rbx + 0x10]
cmp rax, r15
jbe 0x1401a2be9
mov r9, r13
mov r8, r14
xor ebp, ebp
cmp rbp, r15
mov r13, r9
jae 0x1401a2d83
nop dword [rax]
movzx eax, byte [r10 + rbp]
test al, al
js 0x1401a2670
mov byte [r12 + rbp], al
inc rbp
cmp r15, rbp
jne 0x1401a2650
jmp 0x1401a2d83
mov r14, r8
mov r8, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
add rdi, rbp
mov r11, rbp
add r11, r13
mov qword [rsp + 0x50], r11
lea rdx, [r13 + 2]
add rdx, rbp
cmp rdx, qword [rsp + 0x38]
jae 0x1401a3006
inc rdi
lea r10d, [rax + 0x7f]
mov r13, r11
cmp r10b, 0x7d
ja 0x1401a2f97
cmp rdi, rsi
jae 0x1401a2f8d
movzx r11d, byte [r8 + rdi]
lea r15, [rdi + 1]
cmp r10b, 0x1f
jbe 0x1401a2710
lea ebp, [r11 + 0x5f]
add al, 0x5f
cmp bpl, 0x5e
jae 0x1401a271e
movzx eax, al
imul rbx, rax, 0x5e
movzx eax, bpl
lea rdx, [rbx + rax]
add rdx, 0xfffffffffffffa7e
add rbx, rax
cmp rdx, 0x92e
jae 0x1401a2741
lea rax, [0x140310382]
movzx eax, word [rax + rbx*2 - 0xb04]
jmp 0x1401a28af
lea eax, [r11 + 0x7f]
cmp al, 0x7e
jae 0x1401a2730
add r11b, 0xb3
jmp 0x1401a273c
lea edx, [r11 + 0x7f]
cmp dl, 0x20
jae 0x1401a2774
lea r10d, [r11 - 0x4d]
jmp 0x1401a2997
lea eax, [r11 - 0x61]
cmp al, 0x1a
jae 0x1401a278a
add r11b, 0xb9
mov eax, r11d
jmp 0x1401a2796
cmp ebx, 0xa5
jae 0x1401a2961
lea rax, [0x14031003c]
movzx eax, word [rax + rbx*2]
cmp eax, 0x800
jae 0x1401a28ac
mov edx, eax
shr edx, 6
or dl, 0xc0
mov byte [r14 + r13], dl
jmp 0x1401a2b14
lea edx, [r11 - 0x61]
cmp dl, 0x1a
jae 0x1401a2989
lea r10d, [r11 - 0x47]
jmp 0x1401a2997
lea eax, [r11 - 0x41]
cmp al, 0x1a
jae 0x1401a3165
mov r9, rsi
movzx edx, r10b
imul edx, edx, 0xb2
movzx eax, al
add eax, edx
movzx r10d, ax
cmp r10d, 0xb34
mov edx, 0x21b
mov r11d, 0
cmovb rdx, r11
lea r11, [rdx + 0x10e]
lea rbx, [0x1403126a8]
cmp r10w, word [rbx + rdx*2 + 0x21c]
cmovb r11, rdx
cmp r10w, word [rbx + r11*2 + 0x10e]
lea rdx, [r11 + 0x87]
cmovb rdx, r11
lea r11, [rdx + 0x43]
cmp r10w, word [rbx + rdx*2 + 0x86]
cmovb r11, rdx
lea rdx, [r11 + 0x22]
cmp r10w, word [rbx + r11*2 + 0x44]
cmovb rdx, r11
cmp r10w, word [rbx + rdx*2 + 0x22]
lea r11, [rdx + 0x11]
cmovb r11, rdx
lea rdx, [r11 + 8]
cmp r10w, word [rbx + r11*2 + 0x10]
cmovb rdx, r11
lea r11, [rdx + 4]
cmp r10w, word [rbx + rdx*2 + 8]
cmovb r11, rdx
cmp r10w, word [rbx + r11*2 + 4]
lea rdx, [r11 + 2]
cmovb rdx, r11
lea rsi, [rdx + 1]
cmp r10w, word [rbx + rdx*2 + 2]
cmovb rsi, rdx
lea r11, [rsi + 1]
cmp r10w, word [rbx + rsi*2 + 2]
cmovb r11, rsi
movzx esi, word [rbx + r11*2]
cmp r10w, si
jne 0x1401a287d
lea rax, [0x140311e3a]
movzx eax, word [rax + r11*2]
jmp 0x1401a28a9
cmp si, ax
adc r11, 0xffffffffffffffff
cmp r11, 0x437
jae 0x1401a333b
lea rdx, [0x140311e3a]
add ax, word [rdx + r11*2]
lea rdx, [0x1403126a8]
sub ax, word [rdx + r11*2]
mov rsi, r9
movzx eax, ax
mov edx, eax
shr edx, 0xc
or dl, 0xe0
mov byte [r14 + r13], dl
mov edx, eax
shr edx, 6
and dl, 0x3f
or dl, 0x80
mov byte [r14 + r13 + 1], dl
and al, 0x3f
or al, 0x80
mov byte [r14 + r13 + 2], al
add r13, 3
mov qword [rsp + 0x50], r13
cmp r15, rsi
jae 0x1401a2fa6
lea rax, [r13 + 2]
cmp rax, qword [rsp + 0x48]
jae 0x1401a2fb2
movzx eax, byte [r8 + rdi + 1]
add rdi, 2
test al, al
js 0x1401a294e
nop word cs:[rax + rax]
mov byte [r14 + r13], al
mov r10, qword [rsp + 0x50]
lea r13, [r10 + 1]
mov qword [rsp + 0x50], r13
cmp al, 0x3b
ja 0x1401a2cbd
cmp rsi, rdi
je 0x1401a2dce
add r10, 3
cmp r10, qword [rsp + 0x48]
jae 0x1401a2dda
movzx eax, byte [r8 + rdi]
inc rdi
test al, al
jns 0x1401a2910
lea r10d, [rax + 0x7f]
cmp r10b, 0x7d
jbe 0x1401a26b5
jmp 0x1401a2f97
lea rdx, [rbx - 0xf0e]
cmp rdx, 0x1318
jae 0x1401a2aa6
lea rax, str.OsOGP
movzx eax, word [rax + rbx*2 - 0x1e1c]
jmp 0x1401a28af
lea r10d, [r11 - 0x41]
cmp r10b, 0x1a
jae 0x1401a3165
movzx eax, al
imul rdx, rax, 0x54
movzx eax, r10b
add rax, rdx
cmp rax, 0xc36
jae 0x1401a3165
cmp rax, 0x6b3
mov edx, 0x10b
mov r9d, 0
cmovb rdx, r9
lea r9, [0x140311a0c]
cmp word [r9 + rdx*2 + 0x10c], ax
lea r10, [rdx + 0x86]
cmova r10, rdx
cmp word [r9 + r10*2 + 0x86], ax
lea rdx, [r10 + 0x43]
cmova rdx, r10
cmp word [r9 + rdx*2 + 0x42], ax
lea r10, [rdx + 0x21]
cmova r10, rdx
cmp word [r9 + r10*2 + 0x22], ax
lea rdx, [r10 + 0x11]
cmova rdx, r10
cmp word [r9 + rdx*2 + 0x10], ax
lea r10, [rdx + 8]
cmova r10, rdx
cmp word [r9 + r10*2 + 8], ax
lea rdx, [r10 + 4]
cmova rdx, r10
cmp word [r9 + rdx*2 + 4], ax
lea r10, [rdx + 2]
cmova r10, rdx
cmp word [r9 + r10*2 + 2], ax
lea rdx, [r10 + 1]
cmova rdx, r10
cmp word [r9 + rdx*2 + 2], ax
lea r10, [rdx + 1]
cmova r10, rdx
cmp word [r9 + r10*2], ax
jne 0x1401a2a70
lea rax, [0x1403115de]
movzx r11d, word [rax + r10*2]
movzx eax, r11w
jmp 0x1401a28af
adc r10, 0xffffffffffffffff
cmp r10, 0x217
jae 0x1401a3365
lea rdx, [0x1403115de]
movzx r11d, word [rdx + r10*2]
add r11w, ax
lea rax, [0x140311a0c]
sub r11w, word [rax + r10*2]
movzx eax, r11w
jmp 0x1401a28af
cmp r10b, 0x27
jne 0x1401a2ade
cmp bpl, 0xf
jae 0x1401a2ade
lea rdx, [0x140310364]
movzx eax, word [rdx + rax*2]
test ax, ax
je 0x1401a329c
mov edx, eax
shr edx, 6
or dl, 0xc0
mov byte [r14 + r13], dl
mov r14, qword [rsp + 0x40]
mov r13, qword [rsp + 0x50]
jmp 0x1401a2b14
cmp r10b, 0x28
jne 0x1401a2b26
cmp bpl, 0x10
jae 0x1401a2b26
lea rdx, [0x140310344]
movzx eax, word [rdx + rax*2]
mov edx, eax
shr edx, 6
or dl, 0xc0
mov byte [r14 + r13], dl
mov r14, qword [rsp + 0x40]
mov r13, qword [rsp + 0x50]
lea rdx, [r13 + 1]
mov qword [rsp + 0x50], rdx
and al, 0x3f
or al, 0x80
mov byte [r14 + r13 + 1], al
add r13, 2
jmp 0x1401a28d8
cmp r10b, 0x25
jne 0x1401a2b42
cmp bpl, 0x44
jae 0x1401a2b42
lea rdx, [0x1403102bc]
movzx eax, word [rdx + rax*2]
jmp 0x1401a28af
add rbx, 0xffffffffffffff44
cmp rbx, 0x39f
jae 0x1401a329c
mov r12, r8
mov qword [rsp + 0x38], rcx
mov ecx, ebx
call fcn.1401a2480
test rax, rax
je 0x1401a2b94
mov rax, rdx
dec rax
cmp rax, 0x4d
jae 0x1401a337d
lea rax, [0x140310186]
add bx, word [rax + rdx*2 - 2]
lea rax, [0x140310220]
sub bx, word [rax + rdx*2 - 2]
jmp 0x1401a2ba9
cmp rdx, 0x4d
jae 0x1401a3395
lea rax, [0x140310186]
movzx ebx, word [rax + rdx*2]
mov rcx, qword [rsp + 0x38]
mov r8, r12
movzx eax, bx
cmp eax, 0x80
jb 0x1401a329c
cmp eax, 0x800
jae 0x1401a28af
mov eax, ebx
shr eax, 6
or al, 0xc0
mov byte [r14 + r13], al
and bl, 0x3f
or bl, 0x80
mov byte [r14 + r13 + 1], bl
add r13, 2
jmp 0x1401a28d8
test rbx, rbx
je 0x1401a2cd0
movzx eax, byte [r10]
test al, al
js 0x1401a2d47
mov byte [r12], al
mov ebp, 1
cmp ebx, 1
je 0x1401a2cd2
movzx eax, byte [r10 + 1]
test al, al
js 0x1401a2673
mov byte [r12 + 1], al
mov ebp, 2
cmp ebx, 2
je 0x1401a2cd2
movzx eax, byte [r10 + 2]
test al, al
js 0x1401a2673
mov byte [r12 + 2], al
mov ebp, 3
cmp ebx, 3
je 0x1401a2cd2
movzx eax, byte [r10 + 3]
test al, al
js 0x1401a2673
mov byte [r12 + 3], al
mov ebp, 4
cmp ebx, 4
je 0x1401a2cd2
movzx eax, byte [r10 + 4]
test al, al
js 0x1401a2673
mov byte [r12 + 4], al
mov ebp, 5
cmp ebx, 5
je 0x1401a2cd2
movzx eax, byte [r10 + 5]
test al, al
js 0x1401a2673
mov byte [r12 + 5], al
mov ebp, 6
cmp ebx, 6
je 0x1401a2cd2
movzx eax, byte [r10 + 6]
test al, al
js 0x1401a2673
mov byte [r12 + 6], al
mov ebp, 7
jmp 0x1401a2cd2
mov rbp, qword [rsp + 0x48]
cmp rdi, rsi
jbe 0x1401a25ed
jmp 0x1401a3353
xor ebp, ebp
lea rax, [r15 - 0x10]
mov r8, r14
mov r9, r13
lea rbx, [r14 + r13]
add rbx, 8
nop word cs:[rax + rax]
mov rsi, qword [r10 + rbp]
mov r13, qword [r10 + rbp + 8]
mov qword [rbx + rbp - 8], rsi
mov qword [rbx + rbp], r13
movabs r14, 0x8080808080808080
and rsi, r14
and r13, r14
mov r14, r13
or r14, rsi
jne 0x1401a2d28
add rbp, 0x10
cmp rbp, rax
jbe 0x1401a2cf0
jmp 0x1401a263d
test rsi, rsi
je 0x1401a2d4e
tzcnt rax, rsi
shr eax, 3
mov r14, r8
mov r8, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r13, r9
jmp 0x1401a2d76
xor ebp, ebp
jmp 0x1401a267d
test r13, r13
mov r14, r8
je 0x1401a2d5d
tzcnt rax, r13
jmp 0x1401a2d62
mov eax, 0x40
mov r8, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r13, r9
shr eax, 3
add rax, 8
add rbp, rax
movzx eax, byte [r10 + rbp]
jmp 0x1401a267d
xor eax, eax
cmp r11, rdx
setb al
add rdi, r15
add r13, r15
mov r11, r13
lea rdx, [rsp + 0x40]
and edx, 0xffff00
or rdx, rax
mov qword [rcx], rdi
mov qword [rcx + 8], rdx
mov qword [rcx + 0x10], r11
jmp 0x1401a317b
cmp byte [rsp + 0xd0], 0
je 0x1401a2de3
mov word [rcx + 8], 0x102
mov byte [rcx + 0xa], 0
jmp 0x1401a2de7
mov byte [rcx + 8], 1
jmp 0x1401a2de7
mov byte [rcx + 8], 0
mov qword [rcx], rsi
jmp 0x1401a3177
mov byte [rcx + 8], 1
jmp 0x1401a3174
mov byte [rcx + 8], 0
mov qword [rcx], 0
mov qword [rcx + 0x10], 0
jmp 0x1401a317b
mov rbx, r8
mov r8, rdx
lea edx, [rax + 0x7f]
cmp dl, 0x7e
jae 0x1401a2e28
add al, 0xb3
jmp 0x1401a2e36
mov rbx, r8
mov r8, rdx
lea edx, [rax + 0x7f]
cmp dl, 0x20
jae 0x1401a2fe5
lea r10d, [rax - 0x4d]
jmp 0x1401a3067
lea edx, [rax - 0x61]
cmp dl, 0x1a
jae 0x1401a2ff3
add al, 0xb9
mov r11d, eax
mov r9, rsi
mov qword [rsp + 0x30], r8
movzx eax, r10b
movzx eax, ax
imul eax, eax, 0xb2
movzx edi, r11b
add edi, eax
movzx r10d, di
xor eax, eax
cmp r10d, 0xb34
mov edx, 0x21b
cmovb rdx, rax
lea r11, [rdx + 0x10e]
lea rax, [0x1403126a8]
cmp r10w, word [rax + rdx*2 + 0x21c]
cmovb r11, rdx
cmp r10w, word [rax + r11*2 + 0x10e]
lea rdx, [r11 + 0x87]
cmovb rdx, r11
lea r11, [rdx + 0x43]
cmp r10w, word [rax + rdx*2 + 0x86]
cmovb r11, rdx
lea rdx, [r11 + 0x22]
cmp r10w, word [rax + r11*2 + 0x44]
cmovb rdx, r11
cmp r10w, word [rax + rdx*2 + 0x22]
lea r11, [rdx + 0x11]
cmovb r11, rdx
lea rdx, [r11 + 8]
cmp r10w, word [rax + r11*2 + 0x10]
cmovb rdx, r11
lea r11, [rdx + 4]
cmp r10w, word [rax + rdx*2 + 8]
cmovb r11, rdx
cmp r10w, word [rax + r11*2 + 4]
lea rdx, [r11 + 2]
cmovb rdx, r11
lea rsi, [rdx + 1]
cmp r10w, word [rax + rdx*2 + 2]
cmovb rsi, rdx
lea r11, [rsi + 1]
cmp r10w, word [rax + rsi*2 + 2]
cmovb r11, rsi
movzx esi, word [rax + r11*2]
cmp r10w, si
jne 0x1401a2f28
lea rax, [0x140311e3a]
movzx edi, word [rax + r11*2]
mov r8, rbx
jmp 0x1401a2f50
cmp si, di
adc r11, 0xffffffffffffffff
cmp r11, 0x437
jae 0x1401a333b
mov r8, rbx
lea rdx, [0x140311e3a]
add di, word [rdx + r11*2]
sub di, word [rax + r11*2]
mov rsi, r9
movzx eax, di
mov edx, eax
shr edx, 0xc
or dl, 0xe0
mov byte [r14], dl
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [r14 + 1], al
mov r13d, 3
mov eax, 2
and dil, 0x3f
or dil, 0x80
mov byte [r14 + rax], dil
mov edi, 1
jmp 0x1401a25e3
cmp byte [rsp + 0xd0], 0
je 0x1401a3010
mov word [rcx + 8], 0x102
mov byte [rcx + 0xa], 0
jmp 0x1401a3174
mov byte [rcx + 8], 0
mov qword [rcx], r15
jmp 0x1401a3177
mov byte [rcx + 8], 1
mov qword [rcx], r15
jmp 0x1401a3177
cmp edi, 0xa5
mov rsi, r9
jae 0x1401a3025
lea rax, [0x14031003c]
movzx edi, word [rax + rdi*2]
cmp edi, 0x800
jae 0x1401a2f53
jmp 0x1401a320f
lea edx, [rax - 0x61]
cmp dl, 0x1a
jae 0x1401a3059
lea r10d, [rax - 0x47]
jmp 0x1401a3067
lea r11d, [rax - 0x41]
cmp r11b, 0x1a
jb 0x1401a2e39
jmp 0x1401a313b
mov eax, 1
jmp 0x1401a2d94
mov rax, qword [rsp + 0x30]
mov byte [rax], 1
mov byte [rax + 1], r10b
mov byte [rcx + 8], 0
jmp 0x1401a3174
lea rdx, [rdi - 0xf0e]
cmp rdx, 0x1318
jae 0x1401a31c0
lea rax, str.OsOGP
movzx edi, word [rax + rdi*2 - 0x1e1c]
mov eax, edi
shr eax, 0xc
or al, 0xe0
mov byte [r14], al
mov eax, edi
jmp 0x1401a2f61
lea r10d, [rax - 0x41]
cmp r10b, 0x1a
jae 0x1401a313b
movzx edx, sil
imul rdx, rdx, 0x54
movzx r10d, r10b
add r10, rdx
cmp r10, 0xc36
jae 0x1401a313b
xor eax, eax
cmp r10, 0x6b3
mov edx, 0x10b
cmovb rdx, rax
lea rax, [0x140311a0c]
cmp word [rax + rdx*2 + 0x10c], r10w
lea r11, [rdx + 0x86]
cmova r11, rdx
cmp word [rax + r11*2 + 0x86], r10w
lea rdx, [r11 + 0x43]
cmova rdx, r11
cmp word [rax + rdx*2 + 0x42], r10w
lea r11, [rdx + 0x21]
cmova r11, rdx
cmp word [rax + r11*2 + 0x22], r10w
lea rdx, [r11 + 0x11]
cmova rdx, r11
cmp word [rax + rdx*2 + 0x10], r10w
lea r11, [rdx + 8]
cmova r11, rdx
cmp word [rax + r11*2 + 8], r10w
lea rdx, [r11 + 4]
cmova rdx, r11
cmp word [rax + rdx*2 + 4], r10w
lea r11, [rdx + 2]
cmova r11, rdx
cmp word [rax + r11*2 + 2], r10w
lea rdx, [r11 + 1]
cmova rdx, r11
cmp word [rax + rdx*2 + 2], r10w
lea r11, [rdx + 1]
cmova r11, rdx
cmp word [rax + r11*2], r10w
mov qword [rsp + 0x30], r8
jne 0x1401a318f
lea rax, [0x1403115de]
jmp 0x1401a2f1e
mov byte [rcx + 8], 2
test al, al
js 0x1401a314e
mov word [rcx + 9], 1
jmp 0x1401a2de7
mov word [rcx + 9], 2
mov qword [rcx], 1
mov qword [rcx + 0x10], 0
jmp 0x1401a317b
mov byte [rcx + 8], 2
test r11b, r11b
js 0x1401a31e7
mov word [rcx + 9], 1
mov qword [rcx], rdi
mov qword [rcx + 0x10], r13
mov rax, rcx
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
adc r11, 0xffffffffffffffff
cmp r11, 0x217
jae 0x1401a3365
mov rsi, r9
lea rdx, [0x1403115de]
movzx edi, word [rdx + r11*2]
add di, r10w
sub di, word [rax + r11*2]
mov r8, rbx
jmp 0x1401a2f53
cmp r10b, 0x27
sete dl
cmp r11b, 0xf
setb bl
test dl, bl
je 0x1401a31f2
lea rdx, [0x140310364]
movzx edi, word [rdx + rax*2]
test di, di
jne 0x1401a320f
jmp 0x1401a32d3
mov word [rcx + 9], 2
mov qword [rcx], r15
jmp 0x1401a3177
cmp r10b, 0x28
sete dl
cmp r11b, 0x10
setb bl
test dl, bl
je 0x1401a3229
lea rdx, [0x140310344]
movzx edi, word [rdx + rax*2]
mov eax, edi
shr eax, 6
or al, 0xc0
mov byte [r14], al
mov r13d, 2
mov eax, 1
jmp 0x1401a2f77
cmp r10b, 0x25
sete dl
cmp r11b, 0x44
setb r10b
test dl, r10b
je 0x1401a324d
lea rdx, [0x1403102bc]
movzx edi, word [rdx + rax*2]
jmp 0x1401a3048
add rdi, 0xffffffffffffff44
cmp rdi, 0x39f
jae 0x1401a32d3
mov r15, rsi
mov rsi, r8
mov r12, rcx
mov ecx, edi
call fcn.1401a2480
test rax, rax
je 0x1401a32ae
mov rax, rdx
dec rax
cmp rax, 0x4d
jae 0x1401a337d
lea rax, [0x140310186]
lea rcx, [0x140310220]
add di, word [rax + rdx*2 - 2]
sub di, word [rcx + rdx*2 - 2]
jmp 0x1401a32c3
mov word [rcx + 8], 0x202
mov byte [rcx + 0xa], 0
mov qword [rcx], r15
jmp 0x1401a3177
cmp rdx, 0x4d
jae 0x1401a3395
lea rax, [0x140310186]
movzx edi, word [rax + rdx*2]
mov rcx, r12
mov r8, rsi
movzx eax, di
cmp eax, 0x80
jae 0x1401a32e2
mov word [rcx + 8], 0x202
mov byte [rcx + 0xa], 0
jmp 0x1401a3154
cmp eax, 0x800
jae 0x1401a3300
mov eax, edi
shr eax, 6
or al, 0xc0
mov byte [r14], al
mov r13d, 2
mov eax, 1
jmp 0x1401a3321
mov edx, eax
shr edx, 0xc
or dl, 0xe0
mov byte [r14], dl
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [r14 + 1], al
mov r13d, 3
mov eax, 2
mov rsi, r15
jmp 0x1401a2f77
lea r8, [0x1403249d0]
mov rcx, r13
mov rdx, rbp
call fcn.14025d790
lea r8, str.C:UsersDamon.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x437
mov rcx, 0xffffffffffffffff
call fcn.14025d474
lea r8, str.hI2_
mov rcx, rdi
mov rdx, rsi
call fcn.14025d790
lea r8, str.C:UsersDamon.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x217
mov rcx, 0xffffffffffffffff
call fcn.14025d474
lea r8, str.C:UsersDamon.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x4d
mov rcx, 0xffffffffffffffff
call fcn.14025d474
lea r8, str.C:UsersDamon.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov ecx, 0x4d
mov edx, 0x4d
call fcn.14025d474
int3