Function at 0x1400fa470
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 0x1400fae98
cmp r8, 3
jb 0x1400faf66
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 0x1400faea8
xor eax, eax
mov rcx, r11
lea r15, [0x1402241e6]
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], r12
mov r10, r8
sub r10, rcx
jb 0x1400fb897
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 0x1400fa54c
mov edi, r11d
neg edi
and edi, 7
lea rbx, [rdi + 0x10]
cmp rbx, r9
jbe 0x1400fa57e
mov rcx, r13
xor r14d, r14d
cmp r14, r9
mov r12, qword [rsp + 0x38]
jae 0x1400faf82
movzx ebx, byte [r11 + r14]
test bl, bl
js 0x1400fa6fb
mov byte [rsi + r14], bl
inc r14
cmp r9, r14
jne 0x1400fa560
jmp 0x1400faf82
test rdi, rdi
je 0x1400fa64a
movzx ebx, byte [r11]
test bl, bl
js 0x1400fa6cf
mov rcx, r13
mov byte [rsi], bl
mov r14d, 1
cmp edi, 1
je 0x1400fa650
movzx ebx, byte [r11 + 1]
test bl, bl
js 0x1400fa6f6
mov byte [rsi + 1], bl
mov r14d, 2
cmp edi, 2
je 0x1400fa650
movzx ebx, byte [r11 + 2]
test bl, bl
js 0x1400fa6f6
mov byte [rsi + 2], bl
mov r14d, 3
cmp edi, 3
je 0x1400fa650
movzx ebx, byte [r11 + 3]
test bl, bl
js 0x1400fa6f6
mov byte [rsi + 3], bl
mov r14d, 4
cmp edi, 4
je 0x1400fa650
movzx ebx, byte [r11 + 4]
test bl, bl
js 0x1400fa6f6
mov byte [rsi + 4], bl
mov r14d, 5
cmp edi, 5
je 0x1400fa650
movzx ebx, byte [r11 + 5]
test bl, bl
js 0x1400fa6f6
mov byte [rsi + 5], bl
mov r14d, 6
cmp edi, 6
je 0x1400fa650
movzx ebx, byte [r11 + 6]
test bl, bl
js 0x1400fa6f6
mov byte [rsi + 6], bl
mov r14d, 7
jmp 0x1400fa650
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 0x1400fa6a8
add r14, 0x10
cmp r14, rdi
jbe 0x1400fa670
jmp 0x1400fa552
test r13, r13
je 0x1400fa6de
tzcnt r9, r13
shr r9d, 3
mov r12, qword [rsp + 0x38]
mov r13, rcx
mov rbp, qword [rsp + 0x40]
lea r15, [0x1402241e6]
jmp 0x1400fae8b
xor r14d, r14d
mov r12, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
jmp 0x1400fa70a
test r15, r15
mov rbp, qword [rsp + 0x40]
je 0x1400fae6e
tzcnt r9, r15
jmp 0x1400fae74
mov r12, qword [rsp + 0x38]
mov r13, rcx
mov rbp, qword [rsp + 0x40]
lea r15, [0x1402241e6]
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 0x1400fb2c9
inc rax
mov r10, rax
lea r14, [0x1402250ec]
lea ecx, [rbx + 0x7f]
cmp cl, 0x7d
ja 0x1400fae08
cmp r10, r13
jae 0x1400fb073
movzx r9d, byte [rbp + r10]
lea rax, [r10 + 1]
lea esi, [r9 - 0x30]
cmp sil, 9
jbe 0x1400fa7b0
cmp cl, 0x1f
jbe 0x1400fa850
lea esi, [r9 + 0x5f]
cmp sil, 0x5e
jae 0x1400fa951
lea r10d, [rbx + 0x50]
cmp r10b, 0x48
jae 0x1400faaff
movzx ecx, r10b
imul rcx, rcx, 0x5e
movzx r8d, sil
add r8, rcx
lea rcx, [0x140227b92]
movzx ecx, word [rcx + r8*2]
jmp 0x1400faa16
cmp rax, r13
jae 0x1400fb198
movzx ebx, byte [rbp + r10 + 1]
add bl, 0x7f
cmp bl, 0x7d
ja 0x1400fb1b0
lea rax, [r10 + 2]
cmp rax, r13
jae 0x1400fb1cb
movzx edi, byte [rbp + r10 + 2]
add dil, 0xd0
cmp dil, 9
ja 0x1400fb1ec
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 0x1400fa8f4
cmp eax, 0x1d21
jne 0x1400faa53
mov rax, qword [rsp + 0x20]
mov word [rax + r11], 0x9fee
mov byte [rax + r11 + 2], 0x87
mov ecx, 3
jmp 0x1400fac00
lea esi, [r9 - 0x40]
cmp sil, 0x3e
lea rbx, [0x140226c9a]
jbe 0x1400fa872
cmp r9b, 0xfe
jg 0x1400fb353
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 0x1400faa07
lea r8, [r10 + 1]
cmp di, cx
cmova rsi, r10
cmovb r9, r8
mov r10, rsi
sub r10, r9
ja 0x1400fa8a0
lea r8, [r9 - 1]
cmp r8, 0x77c
jae 0x1400fb7f7
lea r8, [0x140225da2]
add cx, word [r8 + r9*2 - 2]
sub cx, word [rbx + r9*2 - 2]
jmp 0x1400faa13
lea rcx, [rax - 0x2e248]
cmp rcx, 0x100000
jae 0x1400fb2d3
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 0x1400fac00
lea esi, [r9 - 0x40]
cmp sil, 0x3e
jbe 0x1400fa96c
cmp r9b, 0xa0
jg 0x1400fb353
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 0x1400fab36
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 0x1400fac3b
lea r8, [r10 + 1]
cmp di, r9w
cmova rsi, r10
cmovb rcx, r8
mov r10, rsi
sub r10, rcx
ja 0x1400fa9b0
lea r8, [rcx - 1]
cmp r8, 0x65b
jae 0x1400fb827
lea r8, [0x140224436]
add r9w, word [r8 + rcx*2 - 2]
sub r9w, word [r14 + rcx*2 - 2]
movzx ecx, r9w
jmp 0x1400faa16
lea rcx, [0x140225da2]
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 0x1400fac03
mov r9d, 0xce
xor ecx, ecx
mov esi, 0xce
shr r9, 1
add r9, rcx
lea r8, [0x14022b072]
movzx edi, word [r8 + r9*2]
cmp di, ax
je 0x1400fabbf
lea r8, [r9 + 1]
cmp di, ax
cmova rsi, r9
cmovb rcx, r8
mov r9, rsi
sub r9, rcx
ja 0x1400faa60
lea r8, [rcx - 1]
cmp r8, 0xce
jae 0x1400fb80f
lea r8, [0x14022b20e]
add ax, word [r8 + rcx*2 - 2]
lea r8, [0x14022b072]
sub ax, word [r8 + rcx*2 - 2]
movzx ecx, ax
cmp ecx, 0x800
jb 0x1400fabda
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 0x1400fac00
cmp bl, 0xa8
je 0x1400fac76
movzx r10d, bl
cmp r10d, 0xa6
je 0x1400fac89
cmp r10d, 0xa1
jne 0x1400facb4
movzx ecx, sil
lea r8, [0x1402240a8]
jmp 0x1400fac9e
add rcx, r10
cmp ecx, 0x360
jae 0x1400fac50
mov r10d, 0x3b
xor r9d, r9d
mov esi, 0x3b
nop word cs:[rax + rax]
shr r10, 1
add r10, r9
lea r8, [0x1402242b4]
movzx edi, word [r8 + r10*2]
cmp di, cx
je 0x1400fad4a
lea r8, [r10 + 1]
cmp di, cx
cmova rsi, r10
cmovb r9, r8
mov r10, rsi
sub r10, r9
ja 0x1400fab60
lea r8, [r9 - 1]
cmp r8, 0x3b
jae 0x1400fb853
lea r8, [0x14022423e]
add cx, word [r8 + r9*2 - 2]
lea r8, [0x1402242b4]
sub cx, word [r8 + r9*2 - 2]
jmp 0x1400fad56
lea rax, [0x14022b20e]
movzx eax, word [rax + r9*2]
movzx ecx, ax
cmp ecx, 0x800
jae 0x1400faacc
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 0x1400fb2bd
lea rcx, [r11 + 3]
cmp rcx, qword [rsp + 0x28]
jae 0x1400fb08e
movzx ebx, byte [rbp + rax]
inc rax
mov r10, rax
test bl, bl
js 0x1400fa73a
jmp 0x1400fae45
lea rcx, [0x140224436]
movzx r9d, word [rcx + r10*2]
movzx ecx, r9w
jmp 0x1400faa16
lea r10, [rcx - 0x22db]
cmp r10, 0x65
jae 0x1400fb83f
lea r8, [0x14022432c]
movzx ecx, word [r8 + rcx*2 - 0x45b6]
jmp 0x1400faa16
cmp sil, 0x20
jae 0x1400facd8
movzx ecx, sil
lea r8, [0x1402243f6]
jmp 0x1400fac9e
add r9b, 0x20
cmp r9b, 0x15
ja 0x1400facd8
movzx ecx, r9b
lea r8, [0x140224164]
movzx ecx, word [r8 + rcx*2]
cmp ecx, 0x800
jae 0x1400faa13
jmp 0x1400fada5
cmp cl, 0x76
jbe 0x1400facd8
add bl, 8
movzx ecx, bl
imul ecx, ecx, 0x5e
movzx r8d, sil
add ecx, r8d
add ecx, 0xffffe234
movzx r8d, cx
jmp 0x1400faa19
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 0x1400fad8c
lea r8, [r10 + 1]
cmp di, cx
cmova rsi, r10
cmovb r9, r8
mov r10, rsi
sub r10, r9
ja 0x1400fad00
lea r8, [r9 - 1]
cmp r8, 0x2b
jae 0x1400fb86b
lea r8, [0x140224190]
add cx, word [r8 + r9*2 - 2]
sub cx, word [r15 + r9*2 - 2]
jmp 0x1400fad98
lea rcx, [0x14022423e]
movzx ecx, word [rcx + r10*2]
movzx r9d, cx
cmp r9d, 0x800
jae 0x1400fadce
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 0x1400fac03
lea rcx, [0x140224190]
movzx ecx, word [rcx + r10*2]
movzx r9d, cx
cmp r9d, 0x800
jae 0x1400fadce
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 0x1400fac03
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 0x1400fac03
cmp bl, 0x80
jne 0x1400fb081
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 0x1400fa4fd
jmp 0x1400fb8a9
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 0x1400fa4fd
jmp 0x1400fb8a9
mov r9d, 0x40
mov r12, qword [rsp + 0x38]
mov r13, rcx
lea r15, [0x1402241e6]
shr r9d, 3
add r9, 8
add r14, r9
movzx ebx, byte [r11 + r14]
jmp 0x1400fa70a
xor r11d, r11d
movzx edi, byte [rdx + 8]
test dil, dil
je 0x1400fa4e7
test r13, r13
je 0x1400faf45
lea rcx, [r11 + 3]
cmp rcx, r8
jae 0x1400fafb2
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 0x1400faf20
movzx edi, dil
cmp edi, 2
jne 0x1400fafd4
mov byte [rdx + 8], 0
add bl, 0x7f
cmp bl, 0x7d
ja 0x1400fb00a
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 0x1400faed0
jmp 0x1400faf45
mov byte [rdx + 8], 0
lea eax, [rbx - 0x30]
cmp al, 9
ja 0x1400fb02a
mov byte [rdx + 8], 2
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], al
mov dil, 2
inc rsi
cmp r13, rsi
jne 0x1400faed0
cmp byte [rsp + 0xd0], 0
je 0x1400fafc5
mov byte [rdx + 8], 0
mov byte [r12 + 8], 2
mov byte [r12 + 9], dil
mov byte [r12 + 0xa], 0
jmp 0x1400fafcb
mov byte [r12 + 8], 1
mov qword [r12], 0
mov qword [r12 + 0x10], 0
jmp 0x1400fb2ea
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 0x1400fb2e5
mov byte [r12 + 8], 1
mov qword [r12], 0
jmp 0x1400fb2e5
mov byte [r12 + 8], 0
mov qword [r12], r13
jmp 0x1400fb2e5
movzx r9d, byte [rdx + 0xb]
mov byte [rdx + 8], 0
add bl, 0xd0
cmp bl, 9
jbe 0x1400fb099
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 0x1400fb021
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 0x1400fb2e5
lea rax, [rsi + 1]
cmp r9b, 0x1f
jbe 0x1400fb0ef
lea edi, [rbx + 0x5f]
cmp dil, 0x5e
jae 0x1400fb270
lea esi, [r9 - 0x2f]
cmp sil, 0x48
jae 0x1400fb3ef
movzx r9d, sil
imul r9, r9, 0x5e
movzx r10d, dil
add r10, r9
lea r9, [0x140227b92]
movzx r9d, word [r9 + r10*2]
jmp 0x1400fb701
cmp byte [rsp + 0xd0], 0
je 0x1400fb186
mov word [r12 + 8], 0x102
jmp 0x1400fb2db
mov byte [r12 + 8], 1
jmp 0x1400fb2c3
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 0x1400fb20e
cmp eax, 0x1d21
jne 0x1400fb378
mov word [r14 + r11], 0x9fee
mov byte [r14 + r11 + 2], 0x87
mov rax, rsi
jmp 0x1400fa4ec
lea r9d, [rbx - 0x40]
cmp r9b, 0x3e
jbe 0x1400fb108
cmp bl, 0xfe
jg 0x1400fb287
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, [0x140226c9a]
mov ebx, 0x77c
shr rdi, 1
add rdi, r10
movzx ebp, word [rsi + rdi*2]
cmp bp, r9w
je 0x1400fb2fe
lea r15, [rdi + 1]
cmp bp, r9w
cmova rbx, rdi
cmovb r10, r15
mov rdi, rbx
sub rdi, r10
ja 0x1400fb131
lea rdi, [r10 - 1]
cmp rdi, 0x77c
jae 0x1400fb7f7
lea rdi, [0x140225da2]
add r9w, word [rdi + r10*2 - 2]
sub r9w, word [rsi + r10*2 - 2]
jmp 0x1400fb30a
mov byte [rdx + 8], 1
mov byte [rdx + 9], cl
mov byte [r12 + 8], 0
jmp 0x1400fb2e1
cmp byte [rsp + 0xd0], 0
je 0x1400fb2a2
mov word [r12 + 8], 0x202
jmp 0x1400fb1e1
mov byte [rdx + 6], 1
mov byte [rdx + 7], r9b
mov word [r12 + 8], 0x102
mov byte [r12 + 0xa], 1
jmp 0x1400fb2c3
cmp byte [rsp + 0xd0], 0
je 0x1400fb2af
mov word [r12 + 8], 0x302
mov byte [r12 + 0xa], 0
jmp 0x1400fb2c3
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 0x1400fb2c3
lea rcx, [rax - 0x2e248]
cmp rcx, 0x100000
jae 0x1400fb3dc
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 0x1400fa4ec
lea r10d, [rbx - 0x40]
cmp r10b, 0x3e
jbe 0x1400fb49e
cmp bl, 0xa0
jle 0x1400fb498
mov byte [r12 + 8], 2
test bl, bl
js 0x1400fb36b
mov word [r12 + 9], 1
jmp 0x1400fb021
mov byte [rdx + 8], 2
mov byte [rdx + 9], cl
mov byte [rdx + 0xa], sil
jmp 0x1400fb2bd
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 0x1400fb2e5
mov edx, 1
jmp 0x1400faf95
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, [0x140225da2]
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 0x1400fa4ec
mov byte [r12 + 8], 2
test r9b, r9b
js 0x1400fb36b
mov word [r12 + 9], 1
jmp 0x1400fb2e1
mov word [r12 + 9], 2
jmp 0x1400fb2c3
mov r8, rbp
mov edi, 0xce
xor r9d, r9d
lea r10, [0x14022b072]
mov ebx, 0xce
shr rdi, 1
add rdi, r9
movzx ebp, word [r10 + rdi*2]
cmp bp, ax
je 0x1400fb41d
lea r15, [rdi + 1]
cmp bp, ax
cmova rbx, rdi
cmovb r9, r15
mov rdi, rbx
sub rdi, r9
ja 0x1400fb38f
lea rdi, [r9 - 1]
cmp rdi, 0xce
jae 0x1400fb80f
lea rdi, [0x14022b20e]
add ax, word [rdi + r9*2 - 2]
sub ax, word [r10 + r9*2 - 2]
jmp 0x1400fb428
mov word [r12 + 8], 0x402
mov byte [r12 + 0xa], 0
jmp 0x1400fb021
cmp r10d, 0x27
je 0x1400fb5f4
cmp r10d, 0x25
je 0x1400fb60b
cmp r10d, 0x20
jne 0x1400fb658
movzx r9d, dil
lea r10, [0x1402240a8]
jmp 0x1400fb61e
lea rax, [0x14022b20e]
movzx eax, word [rax + rdi*2]
mov rbp, r8
movzx r9d, ax
cmp r9d, 0x800
jae 0x1400fb45b
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 0x1400fb488
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 0x1400fa4ec
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 0x1400fb535
mov r8, rbp
mov edi, 0x65b
xor r9d, r9d
lea rsi, [0x1402250ec]
mov ebx, 0x65b
shr rdi, 1
add rdi, r9
movzx ebp, word [rsi + rdi*2]
cmp bp, r10w
je 0x1400fb5ae
lea r15, [rdi + 1]
cmp bp, r10w
cmova rbx, rdi
cmovb r9, r15
mov rdi, rbx
sub rdi, r9
ja 0x1400fb4dd
lea rdi, [r9 - 1]
cmp rdi, 0x65b
jae 0x1400fb827
mov rbp, r8
lea rdi, [0x140224436]
add r10w, word [rdi + r9*2 - 2]
sub r10w, word [rsi + r9*2 - 2]
jmp 0x1400fb5bd
add r9, rsi
cmp r9d, 0x360
jae 0x1400fb5ce
mov r8, rbp
mov edi, 0x3b
xor r10d, r10d
lea rsi, [0x1402242b4]
mov ebx, 0x3b
shr rdi, 1
add rdi, r10
movzx ebp, word [rsi + rdi*2]
cmp bp, r9w
je 0x1400fb73b
lea r15, [rdi + 1]
cmp bp, r9w
cmova rbx, rdi
cmovb r10, r15
mov rdi, rbx
sub rdi, r10
ja 0x1400fb55c
lea rdi, [r10 - 1]
cmp rdi, 0x3b
jae 0x1400fb853
lea rdi, [0x14022423e]
add r9w, word [rdi + r10*2 - 2]
sub r9w, word [rsi + r10*2 - 2]
jmp 0x1400fb747
lea r9, [0x140224436]
movzx r10d, word [r9 + rdi*2]
mov rbp, r8
mov r8, qword [rsp + 0xc8]
movzx r9d, r10w
jmp 0x1400fb701
lea rsi, [r9 - 0x22db]
cmp rsi, 0x65
jae 0x1400fb883
lea r10, [0x14022432c]
movzx r9d, word [r10 + r9*2 - 0x45b6]
jmp 0x1400fb701
cmp dil, 0x20
jae 0x1400fb681
movzx r9d, dil
lea r10, [0x1402243f6]
jmp 0x1400fb61e
add bl, 0x20
cmp bl, 0x15
ja 0x1400fb681
movzx r9d, bl
lea r10, [0x140224164]
movzx r9d, word [r10 + r9*2]
cmp r9d, 0x800
jae 0x1400fb6fd
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 0x1400fa4e9
cmp r9b, 0x76
jbe 0x1400fb681
add r9b, 0x89
movzx r9d, r9b
imul r9d, r9d, 0x5e
movzx r10d, dil
add r9d, r10d
add r9d, 0xffffe234
movzx r10d, r9w
jmp 0x1400fb704
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, [0x1402241e6]
mov ebx, 0x2b
shr rdi, 1
add rdi, r10
movzx ebp, word [rsi + rdi*2]
cmp bp, r9w
je 0x1400fb773
lea r15, [rdi + 1]
cmp bp, r9w
cmova rbx, rdi
cmovb r10, r15
mov rdi, rbx
sub rdi, r10
ja 0x1400fb6ab
lea rdi, [r10 - 1]
cmp rdi, 0x2b
jae 0x1400fb86b
lea rdi, [0x140224190]
add r9w, word [rdi + r10*2 - 2]
sub r9w, word [rsi + r10*2 - 2]
jmp 0x1400fb77f
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 0x1400fa4ec
lea r9, [0x14022423e]
movzx r9d, word [r9 + rdi*2]
mov rbp, r8
movzx r10d, r9w
cmp r10d, 0x800
jae 0x1400fb7c2
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 0x1400fb7a9
lea r9, [0x140224190]
movzx r9d, word [r9 + rdi*2]
mov rbp, r8
movzx r10d, r9w
cmp r10d, 0x800
jae 0x1400fb7c2
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 0x1400fa4ec
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 0x1400fb341
lea r8, [0x140242688]
mov edx, 0x77c
mov rcx, 0xffffffffffffffff
call fcn.14020a400
lea r8, [0x140242688]
mov edx, 0xce
mov rcx, 0xffffffffffffffff
call fcn.14020a400
lea r8, [0x140242688]
mov edx, 0x65b
mov rcx, 0xffffffffffffffff
call fcn.14020a400
lea r8, str.C:Users_root.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:Users_root.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, r10
call fcn.14020a400
lea r8, [0x140242688]
mov edx, 0x3b
mov rcx, 0xffffffffffffffff
call fcn.14020a400
lea r8, [0x140242688]
mov edx, 0x2b
mov rcx, 0xffffffffffffffff
call fcn.14020a400
lea r8, str.C:Users_root.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:Users_root.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, rsi
call fcn.14020a400
lea rax, [0x140242708]
mov rdx, r8
mov r8, rax
call fcn.14020a7b0
lea r8, [0x140242720]
mov rcx, rax
mov rdx, r13
call fcn.14020a7b0
int3