Function at 0x1401065b0
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 r13, r9
mov rbp, r8
mov r12, rcx
mov r8, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xc0]
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x30], 0
cmp byte [rdx + 6], 0
je 0x140106fd8
cmp r8, 3
jb 0x1401070a6
movzx eax, byte [rdx + 7]
mov byte [rdx + 6], 0
mov byte [r14], al
mov qword [rsp + 0x30], 1
mov r11d, 1
movzx edi, byte [rdx + 8]
test dil, dil
jne 0x140106fe8
xor eax, eax
mov rcx, r11
lea r15, [0x1402303c6]
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], r12
mov r10, r8
sub r10, rcx
jb 0x1401079d7
lea r11, [rax + rbp]
mov rbp, r13
sub rbp, rax
mov r12, qword [rsp + 0x20]
cmp r10, rbp
mov r9, rbp
cmovb r9, r10
mov qword [rsp + 0x48], rcx
lea rsi, [r12 + rcx]
mov edi, r11d
xor edi, esi
test dil, 7
mov qword [rsp + 0x50], r8
jne 0x14010668c
mov edi, r11d
neg edi
and edi, 7
lea rbx, [rdi + 0x10]
cmp rbx, r9
jbe 0x1401066be
mov rcx, r13
xor r14d, r14d
cmp r14, r9
mov r12, qword [rsp + 0x38]
jae 0x1401070c2
movzx ebx, byte [r11 + r14]
test bl, bl
js 0x14010683b
mov byte [rsi + r14], bl
inc r14
cmp r9, r14
jne 0x1401066a0
jmp 0x1401070c2
test rdi, rdi
je 0x14010678a
movzx ebx, byte [r11]
test bl, bl
js 0x14010680f
mov rcx, r13
mov byte [rsi], bl
mov r14d, 1
cmp edi, 1
je 0x140106790
movzx ebx, byte [r11 + 1]
test bl, bl
js 0x140106836
mov byte [rsi + 1], bl
mov r14d, 2
cmp edi, 2
je 0x140106790
movzx ebx, byte [r11 + 2]
test bl, bl
js 0x140106836
mov byte [rsi + 2], bl
mov r14d, 3
cmp edi, 3
je 0x140106790
movzx ebx, byte [r11 + 3]
test bl, bl
js 0x140106836
mov byte [rsi + 3], bl
mov r14d, 4
cmp edi, 4
je 0x140106790
movzx ebx, byte [r11 + 4]
test bl, bl
js 0x140106836
mov byte [rsi + 4], bl
mov r14d, 5
cmp edi, 5
je 0x140106790
movzx ebx, byte [r11 + 5]
test bl, bl
js 0x140106836
mov byte [rsi + 5], bl
mov r14d, 6
cmp edi, 6
je 0x140106790
movzx ebx, byte [r11 + 6]
test bl, bl
js 0x140106836
mov byte [rsi + 6], bl
mov r14d, 7
jmp 0x140106790
mov rcx, r13
xor r14d, r14d
lea rdi, [r9 - 0x10]
mov r8, qword [rsp + 0x48]
lea rbx, [r12 + r8]
add rbx, 8
nop word cs:[rax + rax]
mov r13, qword [r11 + r14]
mov r15, qword [r11 + r14 + 8]
mov qword [rbx + r14 - 8], r13
mov qword [rbx + r14], r15
movabs r12, 0x8080808080808080
and r13, r12
and r15, r12
mov r12, r15
or r12, r13
jne 0x1401067e8
add r14, 0x10
cmp r14, rdi
jbe 0x1401067b0
jmp 0x140106692
test r13, r13
je 0x14010681e
tzcnt r9, r13
shr r9d, 3
mov r12, qword [rsp + 0x38]
mov r13, rcx
mov rbp, qword [rsp + 0x40]
lea r15, [0x1402303c6]
jmp 0x140106fcb
xor r14d, r14d
mov r12, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
jmp 0x14010684a
test r15, r15
mov rbp, qword [rsp + 0x40]
je 0x140106fae
tzcnt r9, r15
jmp 0x140106fb4
mov r12, qword [rsp + 0x38]
mov r13, rcx
mov rbp, qword [rsp + 0x40]
lea r15, [0x1402303c6]
add rax, r14
mov rcx, qword [rsp + 0x48]
lea r11, [r14 + rcx]
mov qword [rsp + 0x30], r11
add rcx, r14
add rcx, 3
cmp rcx, qword [rsp + 0x50]
jae 0x140107409
inc rax
mov r10, rax
lea r14, [0x1402312cc]
lea ecx, [rbx + 0x7f]
cmp cl, 0x7d
ja 0x140106f48
cmp r10, r13
jae 0x1401071b3
movzx r9d, byte [rbp + r10]
lea rax, [r10 + 1]
lea esi, [r9 - 0x30]
cmp sil, 9
jbe 0x1401068f0
cmp cl, 0x1f
jbe 0x140106990
lea esi, [r9 + 0x5f]
cmp sil, 0x5e
jae 0x140106a91
lea r10d, [rbx + 0x50]
cmp r10b, 0x48
jae 0x140106c3f
movzx ecx, r10b
imul rcx, rcx, 0x5e
movzx r8d, sil
add r8, rcx
lea rcx, [0x140233d72]
movzx ecx, word [rcx + r8*2]
jmp 0x140106b56
cmp rax, r13
jae 0x1401072d8
movzx ebx, byte [rbp + r10 + 1]
add bl, 0x7f
cmp bl, 0x7d
ja 0x1401072f0
lea rax, [r10 + 2]
cmp rax, r13
jae 0x14010730b
movzx edi, byte [rbp + r10 + 2]
add dil, 0xd0
cmp dil, 9
ja 0x14010732c
add r10, 3
movzx eax, cl
imul rax, rax, 0x3138
movzx ecx, sil
imul rcx, rcx, 0x4ec
add rcx, rax
movzx eax, bl
lea rax, [rax + rax*4]
lea rcx, [rcx + rax*2]
movzx eax, dil
add rax, rcx
cmp rax, 0x99fc
jae 0x140106a34
cmp eax, 0x1d21
jne 0x140106b93
mov rax, qword [rsp + 0x20]
mov word [rax + r11], 0x9fee
mov byte [rax + r11 + 2], 0x87
mov ecx, 3
jmp 0x140106d40
lea esi, [r9 - 0x40]
cmp sil, 0x3e
lea rbx, [0x140232e7a]
jbe 0x1401069b2
cmp r9b, 0xfe
jg 0x140107493
add r9b, 0xbf
mov esi, r9d
movzx ecx, cl
imul r8d, ecx, 0xbe
movzx ecx, sil
add ecx, r8d
mov r10d, 0x77c
xor r9d, r9d
mov esi, 0x77c
nop word cs:[rax + rax]
shr r10, 1
add r10, r9
movzx edi, word [rbx + r10*2]
cmp di, cx
je 0x140106b47
lea r8, [r10 + 1]
cmp di, cx
cmova rsi, r10
cmovb r9, r8
mov r10, rsi
sub r10, r9
ja 0x1401069e0
lea r8, [r9 - 1]
cmp r8, 0x77c
jae 0x140107937
lea r8, [0x140231f82]
add cx, word [r8 + r9*2 - 2]
sub cx, word [rbx + r9*2 - 2]
jmp 0x140106b53
lea rcx, [rax - 0x2e248]
cmp rcx, 0x100000
jae 0x140107413
add eax, 0xfffe1db8
mov ecx, eax
shr ecx, 0x12
or cl, 0xf0
mov r8, qword [rsp + 0x20]
mov byte [r8 + r11], cl
mov ecx, eax
shr ecx, 0xc
and cl, 0x3f
or cl, 0x80
mov byte [r8 + r11 + 1], cl
mov ecx, eax
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [r8 + r11 + 2], cl
and al, 0x3f
or al, 0x80
mov byte [r8 + r11 + 3], al
mov ecx, 4
jmp 0x140106d40
lea esi, [r9 - 0x40]
cmp sil, 0x3e
jbe 0x140106aac
cmp r9b, 0xa0
jg 0x140107493
add r9b, 0xbf
mov esi, r9d
add bl, 0x5f
movzx ecx, bl
lea rcx, [rcx + rcx*2]
shl rcx, 5
movzx r10d, sil
lea r9, [rcx + r10]
add r9, 0xfffffffffffffca0
cmp r9, 0x1f7b
jae 0x140106c76
mov r10d, 0x65b
xor ecx, ecx
mov esi, 0x65b
nop word cs:[rax + rax]
shr r10, 1
add r10, rcx
movzx edi, word [r14 + r10*2]
cmp di, r9w
je 0x140106d7b
lea r8, [r10 + 1]
cmp di, r9w
cmova rsi, r10
cmovb rcx, r8
mov r10, rsi
sub r10, rcx
ja 0x140106af0
lea r8, [rcx - 1]
cmp r8, 0x65b
jae 0x140107967
lea r8, [0x140230616]
add r9w, word [r8 + rcx*2 - 2]
sub r9w, word [r14 + rcx*2 - 2]
movzx ecx, r9w
jmp 0x140106b56
lea rcx, [0x140231f82]
movzx ecx, word [rcx + r10*2]
movzx ecx, cx
mov r8d, ecx
shr r8d, 0xc
or r8b, 0xe0
mov r9, qword [rsp + 0x20]
mov byte [r9 + r11], r8b
mov r8d, ecx
shr r8d, 6
and r8b, 0x3f
or r8b, 0x80
mov byte [r9 + r11 + 1], r8b
and cl, 0x3f
or cl, 0x80
mov byte [r9 + r11 + 2], cl
mov ecx, 3
jmp 0x140106d43
mov r9d, 0xce
xor ecx, ecx
mov esi, 0xce
shr r9, 1
add r9, rcx
lea r8, [0x140237252]
movzx edi, word [r8 + r9*2]
cmp di, ax
je 0x140106cff
lea r8, [r9 + 1]
cmp di, ax
cmova rsi, r9
cmovb rcx, r8
mov r9, rsi
sub r9, rcx
ja 0x140106ba0
lea r8, [rcx - 1]
cmp r8, 0xce
jae 0x14010794f
lea r8, [0x1402373ee]
add ax, word [r8 + rcx*2 - 2]
lea r8, [0x140237252]
sub ax, word [r8 + rcx*2 - 2]
movzx ecx, ax
cmp ecx, 0x800
jb 0x140106d1a
mov eax, ecx
shr eax, 0xc
or al, 0xe0
mov r8, qword [rsp + 0x20]
mov byte [r8 + r11], al
mov eax, ecx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [r8 + r11 + 1], al
and cl, 0x3f
or cl, 0x80
mov byte [r8 + r11 + 2], cl
mov ecx, 3
jmp 0x140106d40
cmp bl, 0xa8
je 0x140106db6
movzx r10d, bl
cmp r10d, 0xa6
je 0x140106dc9
cmp r10d, 0xa1
jne 0x140106df4
movzx ecx, sil
lea r8, [0x140230288]
jmp 0x140106dde
add rcx, r10
cmp ecx, 0x360
jae 0x140106d90
mov r10d, 0x3b
xor r9d, r9d
mov esi, 0x3b
nop word cs:[rax + rax]
shr r10, 1
add r10, r9
lea r8, [0x140230494]
movzx edi, word [r8 + r10*2]
cmp di, cx
je 0x140106e8a
lea r8, [r10 + 1]
cmp di, cx
cmova rsi, r10
cmovb r9, r8
mov r10, rsi
sub r10, r9
ja 0x140106ca0
lea r8, [r9 - 1]
cmp r8, 0x3b
jae 0x140107993
lea r8, [0x14023041e]
add cx, word [r8 + r9*2 - 2]
lea r8, [0x140230494]
sub cx, word [r8 + r9*2 - 2]
jmp 0x140106e96
lea rax, [0x1402373ee]
movzx eax, word [rax + r9*2]
movzx ecx, ax
cmp ecx, 0x800
jae 0x140106c0c
mov ecx, eax
shr ecx, 6
or cl, 0xc0
mov r8, qword [rsp + 0x20]
mov byte [r8 + r11], cl
and al, 0x3f
or al, 0x80
mov byte [r8 + r11 + 1], al
mov ecx, 2
nop dword [rax]
mov rax, r10
add r11, rcx
mov qword [rsp + 0x30], r11
cmp rax, r13
jae 0x1401073fd
lea rcx, [r11 + 3]
cmp rcx, qword [rsp + 0x28]
jae 0x1401071ce
movzx ebx, byte [rbp + rax]
inc rax
mov r10, rax
test bl, bl
js 0x14010687a
jmp 0x140106f85
lea rcx, [0x140230616]
movzx r9d, word [rcx + r10*2]
movzx ecx, r9w
jmp 0x140106b56
lea r10, [rcx - 0x22db]
cmp r10, 0x65
jae 0x14010797f
lea r8, [0x14023050c]
movzx ecx, word [r8 + rcx*2 - 0x45b6]
jmp 0x140106b56
cmp sil, 0x20
jae 0x140106e18
movzx ecx, sil
lea r8, [0x1402305d6]
jmp 0x140106dde
add r9b, 0x20
cmp r9b, 0x15
ja 0x140106e18
movzx ecx, r9b
lea r8, [0x140230344]
movzx ecx, word [r8 + rcx*2]
cmp ecx, 0x800
jae 0x140106b53
jmp 0x140106ee5
cmp cl, 0x76
jbe 0x140106e18
add bl, 8
movzx ecx, bl
imul ecx, ecx, 0x5e
movzx r8d, sil
add ecx, r8d
add ecx, 0xffffe234
movzx r8d, cx
jmp 0x140106b59
add bl, 0x5e
movzx ecx, bl
imul r8d, ecx, 0x5e
movzx ecx, sil
add ecx, r8d
mov r10d, 0x2b
xor r9d, r9d
mov esi, 0x2b
nop word [rax + rax]
shr r10, 1
add r10, r9
movzx edi, word [r15 + r10*2]
cmp di, cx
je 0x140106ecc
lea r8, [r10 + 1]
cmp di, cx
cmova rsi, r10
cmovb r9, r8
mov r10, rsi
sub r10, r9
ja 0x140106e40
lea r8, [r9 - 1]
cmp r8, 0x2b
jae 0x1401079ab
lea r8, [0x140230370]
add cx, word [r8 + r9*2 - 2]
sub cx, word [r15 + r9*2 - 2]
jmp 0x140106ed8
lea rcx, [0x14023041e]
movzx ecx, word [rcx + r10*2]
movzx r9d, cx
cmp r9d, 0x800
jae 0x140106f0e
mov r8d, ecx
shr r8d, 6
or r8b, 0xc0
mov r9, qword [rsp + 0x20]
mov byte [r9 + r11], r8b
and cl, 0x3f
or cl, 0x80
mov byte [r9 + r11 + 1], cl
mov ecx, 2
jmp 0x140106d43
lea rcx, [0x140230370]
movzx ecx, word [rcx + r10*2]
movzx r9d, cx
cmp r9d, 0x800
jae 0x140106f0e
mov r8d, ecx
shr r8d, 6
or r8b, 0xc0
mov r9, qword [rsp + 0x20]
mov byte [r9 + r11], r8b
and cl, 0x3f
or cl, 0x80
mov byte [r9 + r11 + 1], cl
mov ecx, 2
jmp 0x140106d43
mov ecx, r9d
shr ecx, 0xc
or cl, 0xe0
mov r8, qword [rsp + 0x20]
mov byte [r8 + r11], cl
mov ecx, r9d
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [r8 + r11 + 1], cl
and r9b, 0x3f
or r9b, 0x80
mov byte [r8 + r11 + 2], r9b
mov ecx, 3
jmp 0x140106d43
cmp bl, 0x80
jne 0x1401071c1
mov rax, qword [rsp + 0x20]
mov word [rax + r11], 0x82e2
mov byte [rax + r11 + 2], 0xac
add r11, 3
mov rcx, r11
mov rax, r10
mov qword [rsp + 0x30], rcx
mov r8, qword [rsp + 0x28]
cmp rax, r13
jbe 0x14010663d
jmp 0x1401079e9
mov rcx, qword [rsp + 0x20]
mov byte [rcx + r11], bl
mov rcx, qword [rsp + 0x30]
inc rcx
mov qword [rsp + 0x30], rcx
mov r8, qword [rsp + 0x28]
cmp rax, r13
jbe 0x14010663d
jmp 0x1401079e9
mov r9d, 0x40
mov r12, qword [rsp + 0x38]
mov r13, rcx
lea r15, [0x1402303c6]
shr r9d, 3
add r9, 8
add r14, r9
movzx ebx, byte [r11 + r14]
jmp 0x14010684a
xor r11d, r11d
movzx edi, byte [rdx + 8]
test dil, dil
je 0x140106627
test r13, r13
je 0x140107085
lea rcx, [r11 + 3]
cmp rcx, r8
jae 0x1401070f2
movzx r9d, byte [rdx + 9]
movzx r10d, r9b
movzx eax, byte [rdx + 0xa]
xor esi, esi
nop dword [rax]
movzx ebx, byte [rbp + rsi]
cmp dil, 1
je 0x140107060
movzx edi, dil
cmp edi, 2
jne 0x140107114
mov byte [rdx + 8], 0
add bl, 0x7f
cmp bl, 0x7d
ja 0x14010714a
mov byte [rdx + 8], 3
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], al
mov byte [rdx + 0xb], bl
mov dil, 3
inc rsi
cmp r13, rsi
jne 0x140107010
jmp 0x140107085
mov byte [rdx + 8], 0
lea eax, [rbx - 0x30]
cmp al, 9
ja 0x14010716a
mov byte [rdx + 8], 2
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], al
mov dil, 2
inc rsi
cmp r13, rsi
jne 0x140107010
cmp byte [rsp + 0xd0], 0
je 0x140107105
mov byte [rdx + 8], 0
mov byte [r12 + 8], 2
mov byte [r12 + 9], dil
mov byte [r12 + 0xa], 0
jmp 0x14010710b
mov byte [r12 + 8], 1
mov qword [r12], 0
mov qword [r12 + 0x10], 0
jmp 0x14010742a
xor edx, edx
cmp r10, rbp
setb dl
add rax, r9
mov r11, qword [rsp + 0x48]
add r11, r9
lea rcx, [rsp + 0x20]
and rcx, 0xffffffffffffff00
or rcx, rdx
mov qword [r12], rax
mov qword [r12 + 8], rcx
jmp 0x140107425
mov byte [r12 + 8], 1
mov qword [r12], 0
jmp 0x140107425
mov byte [r12 + 8], 0
mov qword [r12], r13
jmp 0x140107425
movzx r9d, byte [rdx + 0xb]
mov byte [rdx + 8], 0
add bl, 0xd0
cmp bl, 9
jbe 0x1401071d9
add al, 0x30
mov byte [rdx + 6], 1
mov byte [rdx + 7], al
mov byte [rdx + 8], 1
mov byte [rdx + 9], r9b
mov word [r12 + 8], 0x102
mov byte [r12 + 0xa], 2
jmp 0x140107161
add al, 0x30
mov byte [rdx + 6], 1
mov byte [rdx + 7], al
mov word [r12 + 8], 0x102
mov byte [r12 + 0xa], 1
mov qword [r12], rsi
jmp 0x140107425
lea rax, [rsi + 1]
cmp r9b, 0x1f
jbe 0x14010722f
lea edi, [rbx + 0x5f]
cmp dil, 0x5e
jae 0x1401073b0
lea esi, [r9 - 0x2f]
cmp sil, 0x48
jae 0x14010752f
movzx r9d, sil
imul r9, r9, 0x5e
movzx r10d, dil
add r10, r9
lea r9, [0x140233d72]
movzx r9d, word [r9 + r10*2]
jmp 0x140107841
cmp byte [rsp + 0xd0], 0
je 0x1401072c6
mov word [r12 + 8], 0x102
jmp 0x14010741b
mov byte [r12 + 8], 1
jmp 0x140107403
movzx r9d, r9b
inc rsi
imul r10, r10, 0x3138
movzx eax, al
imul rax, rax, 0x4ec
add rax, r10
lea r9, [r9 + r9*4]
movzx r10d, bl
add r10, rax
lea rax, [r10 + r9*2]
cmp rax, 0x99fc
jae 0x14010734e
cmp eax, 0x1d21
jne 0x1401074b8
mov word [r14 + r11], 0x9fee
mov byte [r14 + r11 + 2], 0x87
mov rax, rsi
jmp 0x14010662c
lea r9d, [rbx - 0x40]
cmp r9b, 0x3e
jbe 0x140107248
cmp bl, 0xfe
jg 0x1401073c7
add bl, 0xbf
mov r9d, ebx
mov r8, rbp
movzx r10d, r10w
imul r10d, r10d, 0xbe
movzx r9d, r9b
add r9d, r10d
mov edi, 0x77c
xor r10d, r10d
lea rsi, [0x140232e7a]
mov ebx, 0x77c
shr rdi, 1
add rdi, r10
movzx ebp, word [rsi + rdi*2]
cmp bp, r9w
je 0x14010743e
lea r15, [rdi + 1]
cmp bp, r9w
cmova rbx, rdi
cmovb r10, r15
mov rdi, rbx
sub rdi, r10
ja 0x140107271
lea rdi, [r10 - 1]
cmp rdi, 0x77c
jae 0x140107937
lea rdi, [0x140231f82]
add r9w, word [rdi + r10*2 - 2]
sub r9w, word [rsi + r10*2 - 2]
jmp 0x14010744a
mov byte [rdx + 8], 1
mov byte [rdx + 9], cl
mov byte [r12 + 8], 0
jmp 0x140107421
cmp byte [rsp + 0xd0], 0
je 0x1401073e2
mov word [r12 + 8], 0x202
jmp 0x140107321
mov byte [rdx + 6], 1
mov byte [rdx + 7], r9b
mov word [r12 + 8], 0x102
mov byte [r12 + 0xa], 1
jmp 0x140107403
cmp byte [rsp + 0xd0], 0
je 0x1401073ef
mov word [r12 + 8], 0x302
mov byte [r12 + 0xa], 0
jmp 0x140107403
mov byte [rdx + 6], 1
mov byte [rdx + 7], r9b
mov byte [rdx + 8], 1
mov byte [rdx + 9], bl
mov word [r12 + 8], 0x102
mov byte [r12 + 0xa], 2
jmp 0x140107403
lea rcx, [rax - 0x2e248]
cmp rcx, 0x100000
jae 0x14010751c
add eax, 0xfffe1db8
mov ecx, eax
shr ecx, 0x12
or cl, 0xf0
mov byte [r14 + r11], cl
mov ecx, eax
shr ecx, 0xc
and cl, 0x3f
or cl, 0x80
mov byte [r14 + r11 + 1], cl
mov ecx, eax
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [r14 + r11 + 2], cl
and al, 0x3f
or al, 0x80
mov byte [r14 + r11 + 3], al
or r11, 4
mov qword [rsp + 0x30], r11
mov rcx, r11
mov rax, rsi
jmp 0x14010662c
lea r10d, [rbx - 0x40]
cmp r10b, 0x3e
jbe 0x1401075de
cmp bl, 0xa0
jle 0x1401075d8
mov byte [r12 + 8], 2
test bl, bl
js 0x1401074ab
mov word [r12 + 9], 1
jmp 0x140107161
mov byte [rdx + 8], 2
mov byte [rdx + 9], cl
mov byte [rdx + 0xa], sil
jmp 0x1401073fd
mov byte [rdx + 8], 3
mov byte [rdx + 9], cl
mov byte [rdx + 0xa], sil
mov byte [rdx + 0xb], bl
mov byte [r12 + 8], 0
mov qword [r12], rax
jmp 0x140107425
mov edx, 1
jmp 0x1401070d5
mov word [r12 + 8], 0x402
mov byte [r12 + 0xa], 0
mov qword [r12], r10
mov qword [r12 + 0x10], r11
mov rax, r12
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r9, [0x140231f82]
movzx r9d, word [r9 + rdi*2]
mov rbp, r8
movzx r9d, r9w
mov r10d, r9d
shr r10d, 0xc
or r10b, 0xe0
mov byte [r14 + r11], r10b
mov r10d, r9d
shr r10d, 6
and r10b, 0x3f
or r10b, 0x80
mov byte [r14 + r11 + 1], r10b
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + r11 + 2], r9b
mov qword [rsp + 0x30], rcx
mov r8, qword [rsp + 0xc8]
jmp 0x14010662c
mov byte [r12 + 8], 2
test r9b, r9b
js 0x1401074ab
mov word [r12 + 9], 1
jmp 0x140107421
mov word [r12 + 9], 2
jmp 0x140107403
mov r8, rbp
mov edi, 0xce
xor r9d, r9d
lea r10, [0x140237252]
mov ebx, 0xce
shr rdi, 1
add rdi, r9
movzx ebp, word [r10 + rdi*2]
cmp bp, ax
je 0x14010755d
lea r15, [rdi + 1]
cmp bp, ax
cmova rbx, rdi
cmovb r9, r15
mov rdi, rbx
sub rdi, r9
ja 0x1401074cf
lea rdi, [r9 - 1]
cmp rdi, 0xce
jae 0x14010794f
lea rdi, [0x1402373ee]
add ax, word [rdi + r9*2 - 2]
sub ax, word [r10 + r9*2 - 2]
jmp 0x140107568
mov word [r12 + 8], 0x402
mov byte [r12 + 0xa], 0
jmp 0x140107161
cmp r10d, 0x27
je 0x140107734
cmp r10d, 0x25
je 0x14010774b
cmp r10d, 0x20
jne 0x140107798
movzx r9d, dil
lea r10, [0x140230288]
jmp 0x14010775e
lea rax, [0x1402373ee]
movzx eax, word [rax + rdi*2]
mov rbp, r8
movzx r9d, ax
cmp r9d, 0x800
jae 0x14010759b
mov ecx, eax
shr ecx, 6
or cl, 0xc0
mov byte [r14 + r11], cl
and al, 0x3f
or al, 0x80
mov byte [r14 + r11 + 1], al
or r11, 2
mov qword [rsp + 0x30], r11
mov rcx, r11
jmp 0x1401075c8
mov eax, r9d
shr eax, 0xc
or al, 0xe0
mov byte [r14 + r11], al
mov eax, r9d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [r14 + r11 + 1], al
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + r11 + 2], r9b
mov qword [rsp + 0x30], rcx
mov rax, rsi
mov r8, qword [rsp + 0xc8]
jmp 0x14010662c
add bl, 0xbf
mov r10d, ebx
add r9b, 0xe0
movzx r9d, r9b
lea r9, [r9 + r9*2]
shl r9, 5
movzx esi, r10b
lea r10, [r9 + rsi]
add r10, 0xfffffffffffffca0
cmp r10, 0x1f7b
jae 0x140107675
mov r8, rbp
mov edi, 0x65b
xor r9d, r9d
lea rsi, [0x1402312cc]
mov ebx, 0x65b
shr rdi, 1
add rdi, r9
movzx ebp, word [rsi + rdi*2]
cmp bp, r10w
je 0x1401076ee
lea r15, [rdi + 1]
cmp bp, r10w
cmova rbx, rdi
cmovb r9, r15
mov rdi, rbx
sub rdi, r9
ja 0x14010761d
lea rdi, [r9 - 1]
cmp rdi, 0x65b
jae 0x140107967
mov rbp, r8
lea rdi, [0x140230616]
add r10w, word [rdi + r9*2 - 2]
sub r10w, word [rsi + r9*2 - 2]
jmp 0x1401076fd
add r9, rsi
cmp r9d, 0x360
jae 0x14010770e
mov r8, rbp
mov edi, 0x3b
xor r10d, r10d
lea rsi, [0x140230494]
mov ebx, 0x3b
shr rdi, 1
add rdi, r10
movzx ebp, word [rsi + rdi*2]
cmp bp, r9w
je 0x14010787b
lea r15, [rdi + 1]
cmp bp, r9w
cmova rbx, rdi
cmovb r10, r15
mov rdi, rbx
sub rdi, r10
ja 0x14010769c
lea rdi, [r10 - 1]
cmp rdi, 0x3b
jae 0x140107993
lea rdi, [0x14023041e]
add r9w, word [rdi + r10*2 - 2]
sub r9w, word [rsi + r10*2 - 2]
jmp 0x140107887
lea r9, [0x140230616]
movzx r10d, word [r9 + rdi*2]
mov rbp, r8
mov r8, qword [rsp + 0xc8]
movzx r9d, r10w
jmp 0x140107841
lea rsi, [r9 - 0x22db]
cmp rsi, 0x65
jae 0x1401079c3
lea r10, [0x14023050c]
movzx r9d, word [r10 + r9*2 - 0x45b6]
jmp 0x140107841
cmp dil, 0x20
jae 0x1401077c1
movzx r9d, dil
lea r10, [0x1402305d6]
jmp 0x14010775e
add bl, 0x20
cmp bl, 0x15
ja 0x1401077c1
movzx r9d, bl
lea r10, [0x140230344]
movzx r9d, word [r10 + r9*2]
cmp r9d, 0x800
jae 0x14010783d
mov ecx, r9d
shr ecx, 6
or cl, 0xc0
mov byte [r14 + r11], cl
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + r11 + 1], r9b
or r11, 2
mov qword [rsp + 0x30], r11
jmp 0x140106629
cmp r9b, 0x76
jbe 0x1401077c1
add r9b, 0x89
movzx r9d, r9b
imul r9d, r9d, 0x5e
movzx r10d, dil
add r9d, r10d
add r9d, 0xffffe234
movzx r10d, r9w
jmp 0x140107844
mov r8, rbp
add r9b, 0xdf
movzx r9d, r9b
imul r10d, r9d, 0x5e
movzx r9d, dil
add r9d, r10d
mov edi, 0x2b
xor r10d, r10d
lea rsi, [0x1402303c6]
mov ebx, 0x2b
shr rdi, 1
add rdi, r10
movzx ebp, word [rsi + rdi*2]
cmp bp, r9w
je 0x1401078b3
lea r15, [rdi + 1]
cmp bp, r9w
cmova rbx, rdi
cmovb r10, r15
mov rdi, rbx
sub rdi, r10
ja 0x1401077eb
lea rdi, [r10 - 1]
cmp rdi, 0x2b
jae 0x1401079ab
lea rdi, [0x140230370]
add r9w, word [rdi + r10*2 - 2]
sub r9w, word [rsi + r10*2 - 2]
jmp 0x1401078bf
movzx r9d, r9w
mov r10d, r9d
shr r10d, 0xc
or r10b, 0xe0
mov byte [r14 + r11], r10b
mov r10d, r9d
shr r10d, 6
and r10b, 0x3f
or r10b, 0x80
mov byte [r14 + r11 + 1], r10b
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + r11 + 2], r9b
mov qword [rsp + 0x30], rcx
jmp 0x14010662c
lea r9, [0x14023041e]
movzx r9d, word [r9 + rdi*2]
mov rbp, r8
movzx r10d, r9w
cmp r10d, 0x800
jae 0x140107902
mov ecx, r9d
shr ecx, 6
or cl, 0xc0
mov byte [r14 + r11], cl
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + r11 + 1], r9b
jmp 0x1401078e9
lea r9, [0x140230370]
movzx r9d, word [r9 + rdi*2]
mov rbp, r8
movzx r10d, r9w
cmp r10d, 0x800
jae 0x140107902
mov ecx, r9d
shr ecx, 6
or cl, 0xc0
mov byte [r14 + r11], cl
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + r11 + 1], r9b
or r11, 2
mov qword [rsp + 0x30], r11
mov rcx, r11
mov r8, qword [rsp + 0xc8]
jmp 0x14010662c
mov r9d, r10d
shr r9d, 0xc
or r9b, 0xe0
mov byte [r14 + r11], r9b
mov r9d, r10d
shr r9d, 6
and r9b, 0x3f
or r9b, 0x80
mov byte [r14 + r11 + 1], r9b
and r10b, 0x3f
or r10b, 0x80
mov byte [r14 + r11 + 2], r10b
jmp 0x140107481
lea r8, [0x14024e870]
mov edx, 0x77c
mov rcx, 0xffffffffffffffff
call fcn.1402140c0
lea r8, [0x14024e870]
mov edx, 0xce
mov rcx, 0xffffffffffffffff
call fcn.1402140c0
lea r8, [0x14024e870]
mov edx, 0x65b
mov rcx, 0xffffffffffffffff
call fcn.1402140c0
lea r8, str.C:UsersRomain_SAI_TANGUY.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:UsersRomain_SAI_TANGUY.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, r10
call fcn.1402140c0
lea r8, [0x14024e870]
mov edx, 0x3b
mov rcx, 0xffffffffffffffff
call fcn.1402140c0
lea r8, [0x14024e870]
mov edx, 0x2b
mov rcx, 0xffffffffffffffff
call fcn.1402140c0
lea r8, str.C:UsersRomain_SAI_TANGUY.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:UsersRomain_SAI_TANGUY.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, rsi
call fcn.1402140c0
lea rax, [0x14024e900]
mov rdx, r8
mov r8, rax
call fcn.140214470
lea r8, [0x14024e918]
mov rcx, rax
mov rdx, r13
call fcn.140214470
int3