Function at 0x140139c40
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 r12, r9
mov r13, rcx
mov r9, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xc0]
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x30], 0
cmp byte [rdx + 6], 0
je 0x14013a66b
cmp r9, 3
jb 0x14013a73c
movzx eax, byte [rdx + 7]
mov byte [rdx + 6], 0
mov byte [r14], al
mov qword [rsp + 0x30], 1
mov edi, 1
movzx ebp, byte [rdx + 8]
test bpl, bpl
jne 0x14013a67a
xor ecx, ecx
mov rsi, rdi
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], r9
mov rdi, r9
sub rdi, rsi
jb 0x14013af7b
lea rax, [r8 + rcx]
mov r9, r12
sub r9, rcx
cmp rdi, r9
mov r12, r9
cmovb r12, rdi
lea rbx, [r14 + rsi]
mov r11d, eax
xor r11d, ebx
test r11b, 7
jne 0x140139d0a
mov r13d, eax
neg r13d
and r13d, 7
lea r11, [r13 + 0x10]
cmp r11, r12
jbe 0x140139d3f
mov r10, rsi
xor ebp, ebp
cmp rbp, r12
mov r13, qword [rsp + 0x40]
mov rsi, r10
jae 0x14013a750
movzx r15d, byte [rax + rbp]
test r15b, r15b
js 0x140139e93
mov byte [rbx + rbp], r15b
inc rbp
cmp r12, rbp
jne 0x140139d20
jmp 0x14013a750
test r13, r13
je 0x140139e15
movzx r15d, byte [rax]
test r15b, r15b
js 0x140139e8c
mov byte [rbx], r15b
mov ebp, 1
cmp r13d, 1
je 0x140139e17
movzx r15d, byte [rax + 1]
test r15b, r15b
js 0x140139e8e
mov byte [rbx + 1], r15b
mov ebp, 2
cmp r13d, 2
je 0x140139e17
movzx r15d, byte [rax + 2]
test r15b, r15b
js 0x140139e8e
mov byte [rbx + 2], r15b
mov ebp, 3
cmp r13d, 3
je 0x140139e17
movzx r15d, byte [rax + 3]
test r15b, r15b
js 0x140139e8e
mov byte [rbx + 3], r15b
mov ebp, 4
cmp r13d, 4
je 0x140139e17
movzx r15d, byte [rax + 4]
test r15b, r15b
js 0x140139e8e
mov byte [rbx + 4], r15b
mov ebp, 5
cmp r13d, 5
je 0x140139e17
movzx r15d, byte [rax + 5]
test r15b, r15b
js 0x140139e8e
mov byte [rbx + 5], r15b
mov ebp, 6
cmp r13d, 6
je 0x140139e17
movzx r15d, byte [rax + 6]
test r15b, r15b
js 0x140139e8e
mov byte [rbx + 6], r15b
mov ebp, 7
jmp 0x140139e17
xor ebp, ebp
lea r15, [r12 - 0x10]
mov r10, rsi
add r14, rsi
add r14, 8
nop word cs:[rax + rax]
mov r11, qword [rax + rbp]
mov rsi, qword [rax + rbp + 8]
mov qword [r14 + rbp - 8], r11
mov qword [r14 + rbp], rsi
movabs r13, 0x8080808080808080
and r11, r13
and rsi, r13
mov r13, rsi
or r13, r11
jne 0x140139e68
add rbp, 0x10
cmp rbp, r15
jbe 0x140139e30
jmp 0x140139d0f
test r11, r11
je 0x14013a637
tzcnt r9, r11
shr r9d, 3
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov rsi, r10
jmp 0x14013a65e
xor ebp, ebp
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
add rcx, rbp
lea rdi, [rsi + rbp]
mov qword [rsp + 0x30], rdi
lea rax, [rsi + rbp]
add rax, 3
cmp rax, qword [rsp + 0x48]
jae 0x14013aaca
inc rcx
mov rax, rcx
lea rbp, [0x14029e03a]
lea r9d, [r15 + 0x7f]
cmp r9b, 0x7d
ja 0x14013a5dc
cmp rax, r12
jae 0x14013a83f
movzx r10d, byte [r8 + rax]
lea rcx, [rax + 1]
lea r11d, [r10 - 0x30]
cmp r11b, 9
jbe 0x140139f30
cmp r9b, 0x1f
jbe 0x140139fe0
lea r11d, [r10 + 0x5f]
cmp r11b, 0x5e
jae 0x14013a0e8
lea eax, [r15 + 0x50]
cmp al, 0x48
jae 0x14013a2a9
movzx eax, al
imul eax, eax, 0x5e
movzx r9d, r11b
add r9d, eax
lea rax, [0x1402982f6]
movzx eax, word [rax + r9*2]
jmp 0x14013a1b4
cmp rcx, r12
jae 0x14013a978
movzx ebx, byte [r8 + rax + 1]
add bl, 0x7f
cmp bl, 0x7d
ja 0x14013a98f
lea rcx, [rax + 2]
cmp rcx, r12
jae 0x14013a9a8
movzx ebp, byte [r8 + rax + 2]
add bpl, 0xd0
cmp bpl, 9
ja 0x14013a9c7
add rax, 3
movzx ecx, r9b
imul rcx, rcx, 0x3138
movzx r9d, r11b
imul r9, r9, 0x4ec
add r9, rcx
movzx ecx, bl
lea rcx, [rcx + rcx*4]
lea r9, [r9 + rcx*2]
movzx ecx, bpl
add rcx, r9
cmp rcx, 0x99fc
jae 0x14013a075
cmp rcx, 0x1d21
lea rbp, [0x14029e03a]
jne 0x14013a1f0
mov r14, qword [rsp + 0x20]
mov word [r14 + rdi], 0x9fee
mov byte [r14 + rdi + 2], 0x87
mov r9d, 3
jmp 0x14013a3b0
lea r11d, [r10 - 0x40]
cmp r11b, 0x3e
jbe 0x140139ffb
cmp r10b, 0xfe
jg 0x14013ab2a
add r10b, 0xbf
mov r11d, r10d
movzx eax, r9b
imul r9d, eax, 0xbe
movzx eax, r11b
add eax, r9d
mov r10d, 0x77c
xor r9d, r9d
mov r11d, 0x77c
nop dword [rax]
shr r10, 1
add r10, r9
movzx ebx, word [rbp + r10*2]
cmp ax, bx
je 0x14013a1a5
lea rsi, [r10 + 1]
cmp ax, bx
cmova r9, rsi
cmovb r11, r10
mov r10, r11
sub r10, r9
ja 0x14013a020
lea r10, [r9 - 1]
cmp r10, 0x77c
jae 0x14013af8f
lea r10, [0x14029d142]
add ax, word [r10 + r9*2 - 2]
sub ax, word [rbp + r9*2 - 2]
jmp 0x14013a1b1
lea r9, [rcx - 0x2e248]
cmp r9, 0x100000
lea rbp, [0x14029e03a]
jae 0x14013aa48
add ecx, 0xfffe1db8
mov r9d, ecx
shr r9d, 0x12
or r9b, 0xf0
mov r14, qword [rsp + 0x20]
mov byte [r14 + rdi], r9b
mov r9d, ecx
shr r9d, 0xc
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 1], r9b
mov r9d, ecx
shr r9d, 6
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 2], r9b
and cl, 0x3f
or cl, 0x80
mov byte [r14 + rdi + 3], cl
mov r9d, 4
jmp 0x14013a3b0
lea r9d, [r10 - 0x40]
cmp r9b, 0x3e
jbe 0x14013a103
cmp r10b, 0xa0
jg 0x14013ab2a
add r10b, 0xbf
mov r9d, r10d
add r15b, 0x5f
movzx eax, r15b
lea rax, [rax + rax*2]
shl eax, 5
movzx r10d, r9b
lea r9, [rax + r10]
add r9, 0xfffffffffffffca0
cmp r9, 0x1f7b
jae 0x14013a2dd
mov r10d, 0x65b
xor eax, eax
mov r11d, 0x65b
nop dword [rax]
shr r10, 1
add r10, rax
lea rsi, [0x14029c48c]
movzx ebx, word [rsi + r10*2]
cmp bx, r9w
je 0x14013a3ef
lea rsi, [r10 + 1]
cmp bx, r9w
cmova r11, r10
cmovb rax, rsi
mov r10, r11
sub r10, rax
ja 0x14013a140
lea r10, [rax - 1]
cmp r10, 0x65b
jae 0x14013afce
lea r10, [0x14029b7d6]
add r9w, word [r10 + rax*2 - 2]
lea r10, [0x14029c48c]
sub r9w, word [r10 + rax*2 - 2]
movzx eax, r9w
jmp 0x14013a1b4
lea rax, [0x14029d142]
movzx eax, word [rax + r10*2]
movzx eax, ax
mov r9d, eax
shr r9d, 0xc
or r9b, 0xe0
mov r14, qword [rsp + 0x20]
mov byte [r14 + rdi], r9b
mov r9d, eax
shr r9d, 6
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 1], r9b
and al, 0x3f
or al, 0x80
mov byte [r14 + rdi + 2], al
mov r9d, 3
jmp 0x14013a3b3
mov r10d, 0xce
xor r9d, r9d
mov r11d, 0xce
nop
shr r10, 1
add r10, r9
lea rsi, [0x14029ef32]
movzx ebx, word [rsi + r10*2]
cmp bx, cx
je 0x14013a35f
lea rsi, [r10 + 1]
cmp bx, cx
cmova r11, r10
cmovb r9, rsi
mov r10, r11
sub r10, r9
ja 0x14013a200
lea r10, [r9 - 1]
cmp r10, 0xce
jae 0x14013afb6
lea r10, [0x14029f0ce]
add cx, word [r10 + r9*2 - 2]
lea r10, [0x14029ef32]
sub cx, word [r10 + r9*2 - 2]
movzx r9d, cx
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jb 0x14013a381
mov ecx, r9d
shr ecx, 0xc
or cl, 0xe0
mov byte [r14 + rdi], cl
mov ecx, r9d
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [r14 + rdi + 1], cl
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 2], r9b
mov r9d, 3
jmp 0x14013a3b0
cmp r15b, 0xa8
je 0x14013a445
movzx eax, r15b
cmp eax, 0xa6
je 0x14013a42a
cmp eax, 0xa1
jne 0x14013a4c7
movzx eax, r11b
lea r9, [0x140297f68]
jmp 0x14013a45a
add rax, r10
cmp eax, 0x360
jae 0x14013a404
mov r10d, 0x3b
xor r9d, r9d
mov r11d, 0x3b
nop word [rax + rax]
shr r10, 1
add r10, r9
lea rsi, [0x140298174]
movzx ebx, word [rsi + r10*2]
cmp bx, ax
je 0x14013a482
lea rsi, [r10 + 1]
cmp bx, ax
cmova r11, r10
cmovb r9, rsi
mov r10, r11
sub r10, r9
ja 0x14013a300
lea r10, [r9 - 1]
cmp r10, 0x3b
jae 0x14013affa
lea r10, [0x1402980fe]
add ax, word [r10 + r9*2 - 2]
lea r10, [0x140298174]
sub ax, word [r10 + r9*2 - 2]
jmp 0x14013a48e
lea rcx, [0x14029f0ce]
movzx ecx, word [rcx + r10*2]
movzx r9d, cx
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jae 0x14013a273
mov r9d, ecx
shr r9d, 6
or r9b, 0xc0
mov byte [r14 + rdi], r9b
and cl, 0x3f
or cl, 0x80
mov byte [r14 + rdi + 1], cl
mov r9d, 2
nop word cs:[rax + rax]
mov rcx, rax
add rdi, r9
mov qword [rsp + 0x30], rdi
cmp rcx, r12
jae 0x14013aaa9
lea rax, [rdi + 3]
mov r9, qword [rsp + 0x28]
cmp rax, r9
jae 0x14013a859
movzx r15d, byte [r8 + rcx]
inc rcx
mov rax, rcx
test r15b, r15b
js 0x140139ec4
jmp 0x14013a61a
lea rax, [0x14029b7d6]
movzx r9d, word [rax + r10*2]
movzx eax, r9w
jmp 0x14013a1b4
lea r10, [rax - 0x22db]
cmp r10, 0x65
jae 0x14013afe6
lea r9, [0x1402981ec]
movzx eax, word [r9 + rax*2 - 0x45b6]
jmp 0x14013a1b4
add r10b, 0x20
cmp r10b, 0x15
ja 0x14013a4ed
movzx eax, r10b
lea r9, [0x140298024]
jmp 0x14013a45a
cmp r11b, 0x20
jae 0x14013a4ed
movzx eax, r11b
lea r9, [0x1402982b6]
movzx eax, word [r9 + rax*2]
mov r14, qword [rsp + 0x20]
cmp eax, 0x800
jb 0x14013a586
movzx eax, ax
mov r9d, eax
shr r9d, 0xc
or r9b, 0xe0
jmp 0x14013a1c4
lea rax, [0x1402980fe]
movzx eax, word [rax + r10*2]
movzx r9d, ax
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jae 0x14013a5a9
mov r9d, eax
shr r9d, 6
or r9b, 0xc0
mov byte [r14 + rdi], r9b
and al, 0x3f
or al, 0x80
mov byte [r14 + rdi + 1], al
mov r9d, 2
jmp 0x14013a3b3
cmp r9b, 0x76
jbe 0x14013a4ed
add r15b, 8
movzx eax, r15b
imul eax, eax, 0x5e
movzx r9d, r11b
add eax, r9d
add eax, 0xffffe234
movzx r9d, ax
jmp 0x14013a1b7
add r15b, 0x5e
movzx eax, r15b
imul r9d, eax, 0x5e
movzx eax, r11b
add eax, r9d
mov r10d, 0x2b
xor r9d, r9d
mov r11d, 0x2b
nop
shr r10, 1
add r10, r9
lea rsi, [0x1402980a6]
movzx ebx, word [rsi + r10*2]
cmp ax, bx
je 0x14013a568
lea rsi, [r10 + 1]
cmp ax, bx
cmova r9, rsi
cmovb r11, r10
mov r10, r11
sub r10, r9
ja 0x14013a510
lea r10, [r9 - 1]
cmp r10, 0x2b
jae 0x14013b012
lea r10, [0x140298050]
add ax, word [r10 + r9*2 - 2]
lea r10, [0x1402980a6]
sub ax, word [r10 + r9*2 - 2]
jmp 0x14013a574
lea rax, [0x140298050]
movzx eax, word [rax + r10*2]
movzx r9d, ax
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jae 0x14013a5a9
mov r9d, eax
shr r9d, 6
or r9b, 0xc0
mov byte [r14 + rdi], r9b
and al, 0x3f
or al, 0x80
mov byte [r14 + rdi + 1], al
mov r9d, 2
jmp 0x14013a3b3
mov eax, r9d
shr eax, 0xc
or al, 0xe0
mov byte [r14 + rdi], al
mov eax, r9d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [r14 + rdi + 1], al
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 2], r9b
mov r9d, 3
jmp 0x14013a3b3
cmp r15b, 0x80
jne 0x14013a84d
mov r14, qword [rsp + 0x20]
mov word [r14 + rdi], 0x82e2
mov byte [r14 + rdi + 2], 0xac
add rdi, 3
mov r9, qword [rsp + 0x28]
mov rsi, rdi
mov rcx, rax
mov qword [rsp + 0x30], rsi
cmp rcx, r12
jbe 0x140139cc2
jmp 0x14013afa7
mov byte [r14 + rdi], r15b
inc rdi
mov rsi, rdi
mov qword [rsp + 0x30], rsi
cmp rcx, r12
jbe 0x140139cc2
jmp 0x14013afa7
test rsi, rsi
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
je 0x14013a64d
tzcnt r9, rsi
jmp 0x14013a653
mov r9d, 0x40
mov rsi, r10
shr r9d, 3
add r9, 8
add rbp, r9
movzx r15d, byte [rax + rbp]
jmp 0x140139e98
xor edi, edi
movzx ebp, byte [rdx + 8]
test bpl, bpl
je 0x140139cb3
test r12, r12
je 0x14013a717
lea rsi, [rdi + 3]
cmp rsi, r9
jae 0x14013a77c
movzx r9d, byte [rdx + 9]
movzx ebx, r9b
movzx ecx, byte [rdx + 0xa]
xor eax, eax
nop
movzx r15d, byte [r8 + rax]
cmp bpl, 1
je 0x14013a6f0
movzx r11d, bpl
cmp r11d, 2
jne 0x14013a79c
mov byte [rdx + 8], 0
add r15b, 0x7f
cmp r15b, 0x7d
ja 0x14013a7da
mov byte [rdx + 8], 3
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], cl
mov byte [rdx + 0xb], r15b
mov bpl, 3
inc rax
cmp r12, rax
jne 0x14013a6a0
jmp 0x14013a717
mov byte [rdx + 8], 0
lea ecx, [r15 - 0x30]
cmp cl, 9
ja 0x14013a7f9
mov byte [rdx + 8], 2
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], cl
mov bpl, 2
inc rax
cmp r12, rax
jne 0x14013a6a0
cmp byte [rsp + 0xd0], 0
je 0x14013a78e
mov byte [rdx + 8], 0
mov byte [r13 + 8], 2
mov byte [r13 + 9], bpl
mov byte [r13 + 0xa], 0
mov qword [r13], r12
jmp 0x14013aab2
mov byte [r13 + 8], 1
mov qword [r13], 0
xor edi, edi
jmp 0x14013aab2
xor eax, eax
cmp rdi, r9
setb al
add rcx, r12
add rsi, r12
mov rdi, rsi
lea rdx, [rsp + 0x20]
and edx, 0xffff00
or rdx, rax
mov qword [r13], rcx
mov qword [r13 + 8], rdx
jmp 0x14013aab2
mov byte [r13 + 8], 1
mov qword [r13], 0
jmp 0x14013aab2
mov byte [r13 + 8], 0
mov qword [r13], r12
jmp 0x14013aab2
movzx r9d, byte [rdx + 0xb]
mov byte [rdx + 8], 0
add r15b, 0xd0
cmp r15b, 9
jbe 0x14013a863
add cl, 0x30
mov byte [rdx + 6], 1
mov byte [rdx + 7], cl
mov byte [rdx + 8], 1
mov byte [rdx + 9], r9b
mov word [r13 + 8], 0x102
mov byte [r13 + 0xa], 2
mov qword [r13], rax
jmp 0x14013aab2
add cl, 0x30
mov byte [rdx + 6], 1
mov byte [rdx + 7], cl
mov word [r13 + 8], 0x102
mov byte [r13 + 0xa], 1
mov qword [r13], rax
jmp 0x14013aab2
lea rcx, [rax + 1]
cmp r9b, 0x1f
jbe 0x14013a8b8
lea ebp, [r15 + 0x5f]
cmp bpl, 0x5e
jae 0x14013aa5a
lea eax, [r9 - 0x2f]
cmp al, 0x48
jae 0x14013abb5
movzx eax, al
imul eax, eax, 0x5e
movzx r9d, bpl
add r9d, eax
lea rax, [0x1402982f6]
movzx eax, word [rax + r9*2]
jmp 0x14013aaec
cmp byte [rsp + 0xd0], 0
je 0x14013a962
mov word [r13 + 8], 0x102
jmp 0x14013aa4f
mov byte [r13 + 8], 1
jmp 0x14013aaae
movzx r9d, r9b
inc rax
imul r11, rbx, 0x3138
movzx ecx, cl
imul rcx, rcx, 0x4ec
add rcx, r11
lea r9, [r9 + r9*4]
movzx r11d, r15b
add r11, rcx
lea rcx, [r11 + r9*2]
cmp rcx, 0x99fc
jae 0x14013a9e7
cmp ecx, 0x1d21
jne 0x14013ab44
mov word [r14 + rdi], 0x9fee
mov byte [r14 + rdi + 2], 0x87
jmp 0x14013ac4d
lea r9d, [r15 - 0x40]
cmp r9b, 0x3e
jbe 0x14013a8d3
cmp r15b, 0xfe
jg 0x14013aa71
add r15b, 0xbf
mov r9d, r15d
mov r10, rsi
mov rbp, r8
mov r8, r12
movzx eax, bx
imul r11d, eax, 0xbe
movzx eax, r9b
add eax, r11d
mov r15d, 0x77c
xor r9d, r9d
lea rbx, [0x14029e03a]
mov r12d, 0x77c
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp ax, r11w
je 0x14013aad4
lea rsi, [r15 + 1]
cmp ax, r11w
cmova r9, rsi
cmovb r12, r15
mov r15, r12
sub r15, r9
ja 0x14013a903
lea r11, [r9 - 1]
cmp r11, 0x77c
jae 0x14013af8f
mov r12, r8
mov rsi, r10
lea r11, [0x14029d142]
add ax, word [r11 + r9*2 - 2]
sub ax, word [rbx + r9*2 - 2]
mov r8, rbp
jmp 0x14013aae9
mov byte [rdx + 8], 1
mov byte [rdx + 9], r9b
mov byte [r13 + 8], 0
mov qword [r13], rax
jmp 0x14013aab2
cmp byte [rsp + 0xd0], 0
je 0x14013aa8c
mov word [r13 + 8], 0x202
jmp 0x14013a9bd
mov byte [rdx + 6], 1
mov byte [rdx + 7], r10b
mov word [r13 + 8], 0x102
mov byte [r13 + 0xa], 1
jmp 0x14013aaae
cmp byte [rsp + 0xd0], 0
je 0x14013aa9a
mov word [r13 + 8], 0x302
mov byte [r13 + 0xa], 0
jmp 0x14013aaae
mov byte [rdx + 6], 1
mov byte [rdx + 7], r10b
mov byte [rdx + 8], 1
mov byte [rdx + 9], bl
mov word [r13 + 8], 0x102
mov byte [r13 + 0xa], 2
jmp 0x14013aaae
lea r9, [rcx - 0x2e248]
cmp r9, 0x100000
jae 0x14013aa48
add ecx, 0xfffe1db8
mov r9d, ecx
shr r9d, 0x12
or r9b, 0xf0
mov byte [r14 + rdi], r9b
mov r9d, ecx
shr r9d, 0xc
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 1], r9b
mov r9d, ecx
shr r9d, 6
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 2], r9b
and cl, 0x3f
or cl, 0x80
mov byte [r14 + rdi + 3], cl
or rdi, 4
jmp 0x14013ac1d
mov word [r13 + 8], 0x402
mov byte [r13 + 0xa], 0
mov qword [r13], rax
jmp 0x14013aab2
lea ebx, [r15 - 0x40]
cmp bl, 0x3e
jbe 0x14013ac64
cmp r15b, 0xa0
jle 0x14013ac5d
mov byte [r13 + 8], 2
test r15b, r15b
js 0x14013ab38
mov word [r13 + 9], 1
mov qword [r13], rax
jmp 0x14013aab2
mov byte [rdx + 8], 2
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], r11b
jmp 0x14013aaa9
mov byte [rdx + 8], 3
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], r11b
mov byte [rdx + 0xb], bl
mov byte [r13 + 8], 0
mov qword [r13], rcx
mov qword [r13 + 0x10], rdi
mov rax, r13
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, 1
jmp 0x14013a761
lea rax, [0x14029d142]
movzx eax, word [rax + r15*2]
mov r12, r8
mov r8, rbp
mov rsi, r10
movzx eax, ax
mov r9d, eax
shr r9d, 0xc
or r9b, 0xe0
mov byte [r14 + rdi], r9b
mov r9d, eax
shr r9d, 6
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 1], r9b
and al, 0x3f
or al, 0x80
mov byte [r14 + rdi + 2], al
mov qword [rsp + 0x30], rsi
mov r9, qword [rsp + 0xc8]
jmp 0x140139cb8
mov byte [r13 + 8], 2
test r10b, r10b
jns 0x14013aa7f
mov word [r13 + 9], 2
jmp 0x14013aaae
mov rbp, r8
mov r8, r12
mov r15d, 0xce
xor r9d, r9d
lea rbx, [0x14029ef32]
mov r12d, 0xce
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp r11w, cx
je 0x14013abe0
mov r10, rsi
lea rsi, [r15 + 1]
cmp r11w, cx
cmova r12, r15
cmovb r9, rsi
mov rsi, r10
mov r15, r12
sub r15, r9
ja 0x14013ab60
lea r11, [r9 - 1]
cmp r11, 0xce
jae 0x14013afb6
lea r11, [0x14029f0ce]
add cx, word [r11 + r9*2 - 2]
sub cx, word [rbx + r9*2 - 2]
jmp 0x14013abec
cmp ebx, 0x27
je 0x14013aded
cmp ebx, 0x25
je 0x14013add6
cmp ebx, 0x20
jne 0x14013ae13
movzx eax, bpl
lea r9, [0x140297f68]
jmp 0x14013adfe
lea rcx, [0x14029f0ce]
movzx ecx, word [rcx + r15*2]
mov r12, r8
movzx r9d, cx
cmp r9d, 0x800
mov r8, rbp
jae 0x14013ac22
mov r9d, ecx
shr r9d, 6
or r9b, 0xc0
mov byte [r14 + rdi], r9b
and cl, 0x3f
or cl, 0x80
mov byte [r14 + rdi + 1], cl
or rdi, 2
mov rsi, rdi
jmp 0x14013ac4d
mov ecx, r9d
shr ecx, 0xc
or cl, 0xe0
mov byte [r14 + rdi], cl
mov ecx, r9d
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [r14 + rdi + 1], cl
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 2], r9b
mov rcx, rax
mov r9, qword [rsp + 0xc8]
jmp 0x140139cb8
add r15b, 0xbf
mov ebx, r15d
add r9b, 0xe0
movzx eax, r9b
lea r9, [rax + rax*2]
shl r9d, 5
movzx r11d, bl
lea rax, [r9 + r11]
add rax, 0xfffffffffffffca0
cmp rax, 0x1f7b
jae 0x14013ad0f
mov r10, rsi
mov rbp, r8
mov r8, r12
mov r15d, 0x65b
xor r9d, r9d
lea rbx, [0x14029c48c]
mov r12d, 0x65b
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp r11w, ax
je 0x14013ad93
lea rsi, [r15 + 1]
cmp r11w, ax
cmova r12, r15
cmovb r9, rsi
mov r15, r12
sub r15, r9
ja 0x14013acad
lea r11, [r9 - 1]
cmp r11, 0x65b
jae 0x14013afce
mov r12, r8
mov rsi, r10
lea r11, [0x14029b7d6]
add ax, word [r11 + r9*2 - 2]
sub ax, word [rbx + r9*2 - 2]
mov r8, rbp
movzx eax, ax
jmp 0x14013aaec
add r9, r11
cmp r9d, 0x360
jae 0x14013adb0
mov rbp, r8
mov r8, r12
mov r15d, 0x3b
xor eax, eax
lea rbx, [0x140298174]
mov r12d, 0x3b
shr r15, 1
add r15, rax
movzx r11d, word [rbx + r15*2]
cmp r11w, r9w
je 0x14013aefb
mov r10, rsi
lea rsi, [r15 + 1]
cmp r11w, r9w
cmova r12, r15
cmovb rax, rsi
mov rsi, r10
mov r15, r12
sub r15, rax
ja 0x14013ad3a
lea r11, [rax - 1]
cmp r11, 0x3b
jae 0x14013affa
lea r11, [0x1402980fe]
add r9w, word [r11 + rax*2 - 2]
sub r9w, word [rbx + rax*2 - 2]
jmp 0x14013af07
lea rax, [0x14029b7d6]
movzx eax, word [rax + r15*2]
mov r12, r8
mov r8, rbp
mov rsi, r10
movzx eax, ax
jmp 0x14013aaec
lea rax, [r9 - 0x22db]
cmp rax, 0x65
jae 0x14013b02a
lea rax, [0x1402981ec]
movzx eax, word [rax + r9*2 - 0x45b6]
jmp 0x14013aaec
add r15b, 0x20
cmp r15b, 0x15
ja 0x14013ae39
movzx eax, r15b
lea r9, [0x140298024]
jmp 0x14013adfe
cmp bpl, 0x20
jae 0x14013ae39
movzx eax, bpl
lea r9, [0x1402982b6]
movzx eax, word [r9 + rax*2]
cmp eax, 0x800
jae 0x14013aae9
jmp 0x14013aee1
cmp r9b, 0x76
jbe 0x14013ae39
add r9b, 0x89
movzx eax, r9b
imul eax, eax, 0x5e
movzx r9d, bpl
add eax, r9d
add eax, 0xffffe234
movzx r9d, ax
jmp 0x14013aaef
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], r8
mov r8, r12
add r9b, 0xdf
movzx eax, r9b
imul r9d, eax, 0x5e
movzx eax, bpl
add eax, r9d
mov r15d, 0x2b
xor r9d, r9d
lea rbx, [0x1402980a6]
mov r12d, 0x2b
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp ax, r11w
je 0x14013aebb
lea rsi, [r15 + 1]
cmp ax, r11w
cmova r9, rsi
cmovb r12, r15
mov r15, r12
sub r15, r9
ja 0x14013ae6f
lea r11, [r9 - 1]
cmp r11, 0x2b
jae 0x14013b012
lea r11, [0x140298050]
add ax, word [r11 + r9*2 - 2]
sub ax, word [rbx + r9*2 - 2]
jmp 0x14013aec7
lea rax, [0x140298050]
movzx eax, word [rax + r15*2]
mov r12, r8
mov rsi, qword [rsp + 0x50]
movzx r9d, ax
cmp r9d, 0x800
mov r8, qword [rsp + 0x48]
jae 0x14013af4e
mov r9d, eax
shr r9d, 6
or r9b, 0xc0
mov byte [r14 + rdi], r9b
and al, 0x3f
or al, 0x80
mov byte [r14 + rdi + 1], al
jmp 0x14013af35
lea rax, [0x1402980fe]
movzx r9d, word [rax + r15*2]
mov r12, r8
movzx eax, r9w
cmp eax, 0x800
mov r8, rbp
jae 0x14013aaec
mov eax, r9d
shr eax, 6
or al, 0xc0
mov byte [r14 + rdi], al
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 1], r9b
or rdi, 2
mov qword [rsp + 0x30], rdi
mov rsi, rdi
mov r9, qword [rsp + 0xc8]
jmp 0x140139cb8
mov eax, r9d
shr eax, 0xc
or al, 0xe0
mov byte [r14 + rdi], al
mov eax, r9d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [r14 + rdi + 1], al
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + rdi + 2], r9b
jmp 0x14013ab18
lea r8, [0x1402b6660]
mov rcx, rsi
mov rdx, qword [rsp + 0x48]
call fcn.14021a740
lea r8, str.e_
mov edx, 0x77c
mov rcx, 0xffffffffffffffff
call fcn.14021a410
lea r8, [0x1402b6678]
mov rdx, r12
call fcn.14021a740
lea r8, str.e_
mov edx, 0xce
mov rcx, 0xffffffffffffffff
call fcn.14021a410
lea r8, str.e_
mov edx, 0x65b
mov rcx, 0xffffffffffffffff
call fcn.14021a410
lea r8, str.C:Users_sushi.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:Users_sushi.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, r10
call fcn.14021a410
lea r8, str.e_
mov edx, 0x3b
mov rcx, 0xffffffffffffffff
call fcn.14021a410
lea r8, str.e_
mov edx, 0x2b
mov rcx, 0xffffffffffffffff
call fcn.14021a410
lea r8, str.C:Users_sushi.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:Users_sushi.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, rax
call fcn.14021a410
int3