Function at 0x1400d24b0
Capabilities:
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov r15, r9
mov r13, rcx
mov r10, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xb0]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x40], 0
cmp byte [rdx + 6], 0
je 0x1400d2f4e
cmp r10, 2
jbe 0x1400d3027
movzx eax, byte [rdx + 7]
mov byte [rdx + 6], 0
mov byte [rsi], al
mov qword [rsp + 0x40], 1
mov r14d, 1
movzx ebp, byte [rsp + 0xc0]
movzx ebx, byte [rdx + 8]
test bl, bl
jne 0x1400d2f65
mov qword [rsp + 0x28], r8
xor ecx, ecx
mov qword [rsp + 0x20], r15
mov r8, r10
sub r10, r14
jb 0x1400d389e
mov rbp, r13
mov rax, qword [rsp + 0x28]
lea r11, [rax + rcx]
mov r9, r15
sub r9, rcx
cmp r10, r9
mov rax, r9
cmovb rax, r10
lea r13, [rsi + r14]
mov edi, r11d
xor edi, r13d
test dil, 7
jne 0x1400d257f
mov ebx, r11d
neg ebx
and ebx, 7
lea rdi, [rbx + 0x10]
cmp rdi, rax
jbe 0x1400d25b0
xor edi, edi
cmp rdi, rax
jae 0x1400d303c
nop word [rax + rax]
movzx r12d, byte [r11 + rdi]
test r12b, r12b
js 0x1400d2680
mov byte [r13 + rdi], r12b
inc rdi
cmp rax, rdi
jne 0x1400d2590
jmp 0x1400d303c
test rbx, rbx
je 0x1400d2e77
movzx r12d, byte [r11]
test r12b, r12b
js 0x1400d2f08
mov byte [r13], r12b
mov edi, 1
cmp ebx, 1
je 0x1400d2e79
movzx r12d, byte [r11 + 1]
test r12b, r12b
js 0x1400d2680
mov byte [r13 + 1], r12b
mov edi, 2
cmp ebx, 2
je 0x1400d2e79
movzx r12d, byte [r11 + 2]
test r12b, r12b
js 0x1400d2680
mov byte [r13 + 2], r12b
mov edi, 3
cmp ebx, 3
je 0x1400d2e79
movzx r12d, byte [r11 + 3]
test r12b, r12b
js 0x1400d2680
mov byte [r13 + 3], r12b
mov edi, 4
cmp ebx, 4
je 0x1400d2e79
movzx r12d, byte [r11 + 4]
test r12b, r12b
js 0x1400d2680
mov byte [r13 + 4], r12b
mov edi, 5
cmp ebx, 5
je 0x1400d2e79
movzx r12d, byte [r11 + 5]
test r12b, r12b
js 0x1400d2680
mov byte [r13 + 5], r12b
mov edi, 6
cmp ebx, 6
je 0x1400d2e79
movzx r12d, byte [r11 + 6]
test r12b, r12b
js 0x1400d2680
mov byte [r13 + 6], r12b
mov edi, 7
jmp 0x1400d2e79
mov r13, rbp
mov r15, qword [rsp + 0x20]
movzx ebp, byte [rsp + 0xc0]
lea rbx, [0x1401c4ec4]
add rcx, rdi
mov rax, qword [rsp + 0x40]
lea r14, [rax + rdi]
mov qword [rsp + 0x40], r14
add rax, rdi
add rax, 3
cmp rax, r8
jae 0x1400d3373
inc rcx
mov r11, rcx
lea r8, [0x1401cbde0]
lea eax, [r12 + 0x7f]
cmp al, 0x7d
ja 0x1400d2e3c
cmp r11, r15
jae 0x1400d3130
mov rcx, qword [rsp + 0x28]
movzx r9d, byte [rcx + r11]
lea rcx, [r11 + 1]
lea r10d, [r9 - 0x30]
cmp r10b, 9
jbe 0x1400d2740
cmp al, 0x1f
jbe 0x1400d27f0
lea r10d, [r9 + 0x5f]
cmp r10b, 0x5e
jae 0x1400d28e8
lea r11d, [r12 + 0x50]
cmp r11b, 0x48
jae 0x1400d2a9f
movzx eax, r11b
imul eax, eax, 0x5e
movzx r9d, r10b
add r9d, eax
lea rax, [0x1401c87d8]
movzx eax, word [rax + r9*2]
jmp 0x1400d29b4
cmp rcx, r15
jae 0x1400d3252
mov rsi, qword [rsp + 0x28]
movzx ebx, byte [rsi + r11 + 1]
add bl, 0x7f
cmp bl, 0x7d
ja 0x1400d3264
lea rcx, [r11 + 2]
cmp rcx, r15
jae 0x1400d3281
mov rsi, qword [rsp + 0x28]
movzx esi, byte [rsi + r11 + 2]
add sil, 0xd0
cmp sil, 9
ja 0x1400d329f
add r11, 3
movzx eax, al
imul rax, rax, 0x3138
movzx ecx, r10b
imul rcx, rcx, 0x4ec
add rcx, rax
movzx eax, bl
lea rax, [rax + rax*4]
lea rcx, [rcx + rax*2]
movzx eax, sil
add rax, rcx
cmp rax, 0x99fc
jae 0x1400d2884
cmp rax, 0x1d21
lea rbx, [0x1401c4ec4]
jne 0x1400d29ef
mov rsi, qword [rsp + 0x30]
mov word [rsi + r14], 0x9fee
mov byte [rsi + r14 + 2], 0x87
mov eax, 3
jmp 0x1400d2ba0
lea r10d, [r9 - 0x40]
cmp r10b, 0x3e
jbe 0x1400d280b
cmp r9b, 0xfe
jg 0x1400d3416
add r9b, 0xbf
mov r10d, r9d
movzx eax, al
imul r9d, eax, 0xbe
movzx eax, r10b
add eax, r9d
mov r10d, 0x77c
xor r9d, r9d
mov r11d, 0x77c
nop dword [rax + rax]
shr r10, 1
add r10, r9
movzx esi, word [rbx + r10*2]
cmp ax, si
je 0x1400d29a5
lea rdi, [r10 + 1]
cmp ax, si
cmova r9, rdi
cmovb r11, r10
mov r10, r11
sub r10, r9
ja 0x1400d2830
lea r10, [r9 - 1]
cmp r10, 0x77c
jae 0x1400d37fe
lea r10, [0x1401c5dbc]
add ax, word [r10 + r9*2 - 2]
sub ax, word [rbx + r9*2 - 2]
jmp 0x1400d29b1
lea rcx, [rax - 0x2e248]
cmp rcx, 0x100000
lea rbx, [0x1401c4ec4]
jae 0x1400d337d
add eax, 0xfffe1db8
mov ecx, eax
shr ecx, 0x12
or cl, 0xf0
mov rsi, qword [rsp + 0x30]
mov byte [rsi + r14], cl
mov ecx, eax
shr ecx, 0xc
and cl, 0x3f
or cl, 0x80
mov byte [rsi + r14 + 1], cl
mov ecx, eax
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [rsi + r14 + 2], cl
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 3], al
mov eax, 4
jmp 0x1400d2ba0
lea r10d, [r9 - 0x40]
cmp r10b, 0x3e
jbe 0x1400d2903
cmp r9b, 0xa0
jg 0x1400d3416
add r9b, 0xbf
mov r10d, r9d
add r12b, 0x5f
movzx eax, r12b
lea rax, [rax + rax*2]
shl eax, 5
movzx r10d, r10b
lea r9, [rax + r10]
add r9, 0xfffffffffffffca0
cmp r9, 0x1f7b
jae 0x1400d2ad7
mov r10d, 0x65b
xor eax, eax
mov r11d, 0x65b
nop dword [rax]
shr r10, 1
add r10, rax
lea rsi, [0x1401c6cb4]
movzx esi, word [rsi + r10*2]
cmp si, r9w
je 0x1400d2be4
lea rdi, [r10 + 1]
cmp si, r9w
cmova r11, r10
cmovb rax, rdi
mov r10, r11
sub r10, rax
ja 0x1400d2940
lea r10, [rax - 1]
cmp r10, 0x65b
jae 0x1400d382e
lea r10, [0x1401c796a]
add r9w, word [r10 + rax*2 - 2]
lea r10, [0x1401c6cb4]
sub r9w, word [r10 + rax*2 - 2]
movzx eax, r9w
jmp 0x1400d29b4
lea rax, [0x1401c5dbc]
movzx eax, word [rax + r10*2]
movzx eax, ax
mov r9d, eax
shr r9d, 0xc
or r9b, 0xe0
mov rsi, qword [rsp + 0x30]
mov byte [rsi + r14], r9b
mov r9d, eax
shr r9d, 6
and r9b, 0x3f
or r9b, 0x80
mov byte [rsi + r14 + 1], r9b
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 2], al
mov eax, 3
jmp 0x1400d2ba3
mov r9d, 0xce
xor ecx, ecx
mov r10d, 0xce
nop dword [rax]
shr r9, 1
add r9, rcx
lea rsi, [0x1401cbe8e]
movzx esi, word [rsi + r9*2]
cmp si, ax
je 0x1400d2b5f
lea rdi, [r9 + 1]
cmp si, ax
cmova r10, r9
cmovb rcx, rdi
mov r9, r10
sub r9, rcx
ja 0x1400d2a00
lea r9, [rcx - 1]
cmp r9, 0xce
jae 0x1400d3816
lea r9, [0x1401cc02a]
add ax, word [r9 + rcx*2 - 2]
lea r9, [0x1401cbe8e]
sub ax, word [r9 + rcx*2 - 2]
movzx ecx, ax
mov rsi, qword [rsp + 0x30]
cmp ecx, 0x800
jb 0x1400d2b7f
mov eax, ecx
shr eax, 0xc
or al, 0xe0
mov byte [rsi + r14], al
mov eax, ecx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 1], al
and cl, 0x3f
or cl, 0x80
mov byte [rsi + r14 + 2], cl
mov eax, 3
jmp 0x1400d2ba0
cmp r12b, 0xa8
je 0x1400d2c60
movzx r11d, r12b
cmp r11d, 0xa6
je 0x1400d2c1f
cmp r11d, 0xa1
jne 0x1400d2cf7
movzx eax, r10b
lea r9, [0x1401cbcb8]
jmp 0x1400d2c38
add rax, r10
cmp eax, 0x360
jae 0x1400d2bf9
mov r10d, 0x3b
xor r9d, r9d
mov r11d, 0x3b
nop word cs:[rax + rax]
shr r10, 1
add r10, r9
lea rsi, [0x1401c8620]
movzx esi, word [rsi + r10*2]
cmp si, ax
je 0x1400d2cb3
lea rdi, [r10 + 1]
cmp si, ax
cmova r11, r10
cmovb r9, rdi
mov r10, r11
sub r10, r9
ja 0x1400d2b00
lea r10, [r9 - 1]
cmp r10, 0x3b
jae 0x1400d385a
lea r10, [0x1401c8698]
add ax, word [r10 + r9*2 - 2]
lea r10, [0x1401c8620]
sub ax, word [r10 + r9*2 - 2]
jmp 0x1400d2cbf
lea rax, [0x1401cc02a]
movzx eax, word [rax + r9*2]
movzx ecx, ax
mov rsi, qword [rsp + 0x30]
cmp ecx, 0x800
jae 0x1400d2a71
mov ecx, eax
shr ecx, 6
or cl, 0xc0
mov byte [rsi + r14], cl
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 1], al
mov eax, 2
nop dword [rax]
mov rcx, r11
add r14, rax
mov qword [rsp + 0x40], r14
cmp rcx, r15
jae 0x1400d3368
lea rax, [r14 + 3]
mov r10, qword [rsp + 0x38]
cmp rax, r10
jae 0x1400d3145
mov rax, qword [rsp + 0x28]
movzx r12d, byte [rax + rcx]
inc rcx
mov r11, rcx
test r12b, r12b
js 0x1400d26c5
jmp 0x1400d2ec8
lea rax, [0x1401c796a]
movzx r9d, word [rax + r10*2]
movzx eax, r9w
jmp 0x1400d29b4
lea r10, [rax - 0x22db]
cmp r10, 0x65
jae 0x1400d3846
lea r9, [0x1401c870e]
movzx eax, word [r9 + rax*2 - 0x45b6]
jmp 0x1400d29b4
add r9b, 0x20
cmp r9b, 0x15
ja 0x1400d2d1b
movzx eax, r9b
lea r9, [0x1401cbd74]
movzx eax, word [r9 + rax*2]
mov rsi, qword [rsp + 0x30]
cmp eax, 0x800
jb 0x1400d2da8
movzx eax, ax
mov r9d, eax
shr r9d, 0xc
or r9b, 0xe0
jmp 0x1400d29c4
cmp r10b, 0x20
jae 0x1400d2d1b
movzx eax, r10b
lea r8, [0x1401cbda0]
movzx eax, word [r8 + rax*2]
mov rsi, qword [rsp + 0x30]
cmp eax, 0x800
jae 0x1400d2dfc
mov r9d, eax
shr r9d, 6
or r9b, 0xc0
mov byte [rsi + r14], r9b
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 1], al
mov eax, 2
lea r8, [0x1401cbde0]
jmp 0x1400d2ba3
lea rax, [0x1401c8698]
movzx eax, word [rax + r10*2]
movzx r9d, ax
mov rsi, qword [rsp + 0x30]
cmp r9d, 0x800
jae 0x1400d2dca
mov r9d, eax
shr r9d, 6
or r9b, 0xc0
mov byte [rsi + r14], r9b
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 1], al
mov eax, 2
jmp 0x1400d2ba3
cmp al, 0x76
jbe 0x1400d2d1b
add r12b, 8
movzx eax, r12b
imul eax, eax, 0x5e
movzx r9d, r10b
add eax, r9d
add eax, 0xffffe234
movzx r9d, ax
jmp 0x1400d29b7
add r12b, 0x5e
movzx eax, r12b
imul r9d, eax, 0x5e
movzx eax, r10b
add eax, r9d
mov r10d, 0x2b
xor r9d, r9d
mov r11d, 0x2b
nop dword [rax]
shr r10, 1
add r10, r9
movzx esi, word [r8 + r10*2]
cmp ax, si
je 0x1400d2d8a
lea rdi, [r10 + 1]
cmp ax, si
cmova r9, rdi
cmovb r11, r10
mov r10, r11
sub r10, r9
ja 0x1400d2d40
lea r10, [r9 - 1]
cmp r10, 0x2b
jae 0x1400d3872
lea r10, [0x1401cbe38]
add ax, word [r10 + r9*2 - 2]
sub ax, word [r8 + r9*2 - 2]
jmp 0x1400d2d96
lea rax, [0x1401cbe38]
movzx eax, word [rax + r10*2]
movzx r9d, ax
mov rsi, qword [rsp + 0x30]
cmp r9d, 0x800
jae 0x1400d2dca
mov r9d, eax
shr r9d, 6
or r9b, 0xc0
mov byte [rsi + r14], r9b
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 1], al
mov eax, 2
jmp 0x1400d2ba3
mov eax, r9d
shr eax, 0xc
or al, 0xe0
mov byte [rsi + r14], al
mov eax, r9d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 1], al
and r9b, 0x3f
or r9b, 0x80
mov byte [rsi + r14 + 2], r9b
mov eax, 3
jmp 0x1400d2ba3
movzx eax, ax
mov r9d, eax
shr r9d, 0xc
or r9b, 0xe0
mov byte [rsi + r14], r9b
mov r9d, eax
shr r9d, 6
and r9b, 0x3f
or r9b, 0x80
mov byte [rsi + r14 + 1], r9b
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 2], al
mov eax, 3
lea r8, [0x1401cbde0]
jmp 0x1400d2ba3
cmp r12b, 0x80
jne 0x1400d3139
mov rsi, qword [rsp + 0x30]
mov word [rsi + r14], 0x82e2
mov byte [rsi + r14 + 2], 0xac
add r14, 3
mov r10, qword [rsp + 0x38]
mov rcx, r11
mov qword [rsp + 0x40], r14
cmp rcx, r15
jbe 0x1400d2536
jmp 0x1400d3407
xor edi, edi
lea rbx, [rax - 0x10]
add rsi, r14
add rsi, 8
nop word cs:[rax + rax]
mov r12, qword [r11 + rdi]
mov r15, qword [r11 + rdi + 8]
mov qword [rsi + rdi - 8], r12
mov qword [rsi + rdi], r15
movabs r14, 0x8080808080808080
and r12, r14
and r15, r14
mov r14, r15
or r14, r12
jne 0x1400d2ee2
add rdi, 0x10
cmp rdi, rbx
jbe 0x1400d2e90
jmp 0x1400d2581
mov byte [rsi + r14], r12b
inc r14
mov qword [rsp + 0x40], r14
cmp rcx, r15
jbe 0x1400d2536
jmp 0x1400d3407
test r12, r12
je 0x1400d2f12
tzcnt rax, r12
shr eax, 3
mov r13, rbp
mov r15, qword [rsp + 0x20]
movzx ebp, byte [rsp + 0xc0]
lea rbx, [0x1401c4ec4]
jmp 0x1400d2f41
xor edi, edi
mov r13, rbp
jmp 0x1400d2688
test r15, r15
mov r13, rbp
lea rbx, [0x1401c4ec4]
je 0x1400d2f28
tzcnt rax, r15
jmp 0x1400d2f2d
mov eax, 0x40
mov r15, qword [rsp + 0x20]
movzx ebp, byte [rsp + 0xc0]
shr eax, 3
add rax, 8
add rdi, rax
movzx r12d, byte [r11 + rdi]
jmp 0x1400d2697
xor r14d, r14d
movzx ebp, byte [rsp + 0xc0]
movzx ebx, byte [rdx + 8]
test bl, bl
je 0x1400d252a
test r15, r15
je 0x1400d3007
lea rax, [r14 + 3]
cmp rax, r10
jae 0x1400d306c
movzx ecx, byte [rdx + 9]
movzx r9d, cl
movzx r11d, byte [rdx + 0xa]
xor edi, edi
nop word [rax + rax]
movzx r10d, byte [r8 + rdi]
cmp bl, 1
je 0x1400d2fe0
movzx ebx, bl
cmp ebx, 2
jne 0x1400d308c
mov byte [rdx + 8], 0
add r10b, 0x7f
cmp r10b, 0x7d
ja 0x1400d30ca
mov byte [rdx + 8], 3
mov byte [rdx + 9], cl
mov byte [rdx + 0xa], r11b
mov byte [rdx + 0xb], r10b
mov bl, 3
inc rdi
cmp r15, rdi
jne 0x1400d2f90
jmp 0x1400d3007
mov byte [rdx + 8], 0
lea r11d, [r10 - 0x30]
cmp r11b, 9
ja 0x1400d30eb
mov byte [rdx + 8], 2
mov byte [rdx + 9], cl
mov byte [rdx + 0xa], r11b
mov bl, 2
inc rdi
cmp r15, rdi
jne 0x1400d2f90
test bpl, bpl
je 0x1400d307e
mov byte [rdx + 8], 0
mov byte [r13 + 8], 2
mov byte [r13 + 9], bl
mov byte [r13 + 0xa], 0
mov qword [r13], r15
jmp 0x1400d338d
mov byte [r13 + 8], 1
mov qword [r13], 0
xor r14d, r14d
jmp 0x1400d338d
xor edx, edx
cmp r10, r9
setb dl
add rcx, rax
add rax, qword [rsp + 0x40]
mov r14, rax
mov r13, rbp
lea rax, [rsp + 0x30]
and eax, 0xffff00
or rax, rdx
mov qword [r13], rcx
mov qword [r13 + 8], rax
jmp 0x1400d338d
mov byte [r13 + 8], 1
mov qword [r13], 0
jmp 0x1400d338d
mov byte [r13 + 8], 0
mov qword [r13], r15
jmp 0x1400d338d
movzx ecx, byte [rdx + 0xb]
mov byte [rdx + 8], 0
add r10b, 0xd0
cmp r10b, 9
jbe 0x1400d3153
add r11b, 0x30
mov byte [rdx + 6], 1
mov byte [rdx + 7], r11b
mov byte [rdx + 8], 1
mov byte [rdx + 9], cl
mov word [r13 + 8], 0x102
mov byte [r13 + 0xa], 2
mov qword [r13], rdi
jmp 0x1400d338d
add r11b, 0x30
mov byte [rdx + 6], 1
mov byte [rdx + 7], r11b
mov word [r13 + 8], 0x102
mov byte [r13 + 0xa], 1
mov qword [r13], rdi
jmp 0x1400d338d
lea rbx, [rdi + 1]
cmp cl, 0x1f
jbe 0x1400d31a5
lea r11d, [r10 + 0x5f]
cmp r11b, 0x5e
jae 0x1400d331a
lea ebx, [rcx - 0x2f]
cmp bl, 0x48
jae 0x1400d34c9
movzx ecx, bl
imul ecx, ecx, 0x5e
movzx r9d, r11b
add r9d, ecx
lea rcx, [0x1401c87d8]
movzx ecx, word [rcx + r9*2]
jmp 0x1400d33b7
test bpl, bpl
je 0x1400d3241
mov word [r13 + 8], 0x102
jmp 0x1400d3384
mov byte [r13 + 8], 1
mov qword [r13], rcx
jmp 0x1400d338d
movzx ecx, cl
imul r9, r9, 0x3138
movzx r11d, r11b
imul r11, r11, 0x4ec
add r11, r9
lea rcx, [rcx + rcx*4]
movzx r9d, r10b
add r9, r11
lea rcx, [r9 + rcx*2]
cmp rcx, 0x99fc
jae 0x1400d32c3
cmp ecx, 0x1d21
jne 0x1400d3430
mov word [rsi + r14], 0x9fee
mov byte [rsi + r14 + 2], 0x87
jmp 0x1400d33e5
lea ecx, [r10 - 0x40]
cmp cl, 0x3e
jbe 0x1400d31bf
cmp r10b, 0xfe
jg 0x1400d3332
add r10b, 0xbf
mov ecx, r10d
mov rbp, r15
movzx r9d, r9w
imul r9d, r9d, 0xbe
movzx ecx, cl
add ecx, r9d
mov r11d, 0x77c
xor r9d, r9d
lea r10, [0x1401c4ec4]
mov ebx, 0x77c
shr r11, 1
add r11, r9
movzx r12d, word [r10 + r11*2]
cmp cx, r12w
je 0x1400d33a5
lea r15, [r11 + 1]
cmp cx, r12w
cmova r9, r15
cmovb rbx, r11
mov r11, rbx
sub r11, r9
ja 0x1400d31e8
lea r11, [r9 - 1]
cmp r11, 0x77c
jae 0x1400d37fe
mov r15, rbp
lea r11, [0x1401c5dbc]
add cx, word [r11 + r9*2 - 2]
sub cx, word [r10 + r9*2 - 2]
jmp 0x1400d33b4
mov byte [rdx + 8], 1
mov byte [rdx + 9], al
mov byte [r13 + 8], 0
jmp 0x1400d3389
test bpl, bpl
je 0x1400d334d
mov word [r13 + 8], 0x202
jmp 0x1400d3291
mov byte [rdx + 6], 1
mov byte [rdx + 7], r9b
mov word [r13 + 8], 0x102
mov byte [r13 + 0xa], 1
mov qword [r13], rcx
jmp 0x1400d338d
test bpl, bpl
je 0x1400d335a
mov word [r13 + 8], 0x302
mov byte [r13 + 0xa], 0
mov qword [r13], rcx
jmp 0x1400d338d
mov byte [rdx + 6], 1
mov byte [rdx + 7], r9b
mov byte [rdx + 8], 1
mov byte [rdx + 9], bl
mov word [r13 + 8], 0x102
mov byte [r13 + 0xa], 2
mov qword [r13], rcx
jmp 0x1400d338d
lea rax, [rcx - 0x2e248]
cmp rax, 0x100000
jae 0x1400d34b1
add ecx, 0xfffe1db8
mov eax, ecx
shr eax, 0x12
or al, 0xf0
mov byte [rsi + r14], al
mov eax, ecx
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 1], al
mov eax, ecx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsi + r14 + 2], al
and cl, 0x3f
or cl, 0x80
mov byte [rsi + r14 + 3], cl
or r14, 4
mov rax, r14
jmp 0x1400d33e5
lea r9d, [r10 - 0x40]
cmp r9b, 0x3e
jbe 0x1400d3534
cmp r10b, 0xa0
jle 0x1400d352d
mov byte [r13 + 8], 2
test r10b, r10b
js 0x1400d34f7
mov word [r13 + 9], 1
mov qword [r13], rdi
jmp 0x1400d338d
mov byte [rdx + 8], 2
mov byte [rdx + 9], al
mov byte [rdx + 0xa], r10b
jmp 0x1400d3368
mov byte [rdx + 8], 3
mov byte [rdx + 9], al
mov byte [rdx + 0xa], r10b
mov byte [rdx + 0xb], bl
mov byte [r13 + 8], 0
mov qword [r13], rcx
jmp 0x1400d338d
mov edx, 1
jmp 0x1400d3052
mov word [r13 + 8], 0x402
mov byte [r13 + 0xa], 0
mov qword [r13], r11
mov qword [r13 + 0x10], r14
mov rax, r13
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x1401c5dbc]
movzx ecx, word [rcx + r11*2]
mov r15, rbp
movzx ecx, cx
mov r9d, ecx
shr r9d, 0xc
or r9b, 0xe0
mov byte [rsi + r14], r9b
mov r9d, ecx
shr r9d, 6
and r9b, 0x3f
or r9b, 0x80
mov byte [rsi + r14 + 1], r9b
and cl, 0x3f
or cl, 0x80
mov byte [rsi + r14 + 2], cl
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x40], rax
lea rcx, [rdi + 1]
mov r14, rax
cmp rdi, r15
mov r10, qword [rsp + 0xb8]
jb 0x1400d2531
lea r8, [0x1401cc578]
mov rdx, r15
call fcn.140196e10
mov byte [r13 + 8], 2
test r9b, r9b
js 0x1400d3507
mov word [r13 + 9], 1
jmp 0x1400d3389
mov qword [rsp + 0x28], r8
mov r11d, 0xce
xor r9d, r9d
lea r8, [0x1401cbe8e]
mov ebx, 0xce
shr r11, 1
add r11, r9
movzx r12d, word [r8 + r11*2]
cmp r12w, cx
je 0x1400d3517
mov r10d, ebp
mov rbp, r15
lea r15, [r11 + 1]
cmp r12w, cx
cmova rbx, r11
cmovb r9, r15
mov r15, rbp
mov ebp, r10d
mov r11, rbx
sub r11, r9
ja 0x1400d344a
lea r11, [r9 - 1]
cmp r11, 0xce
jae 0x1400d3816
lea r11, [0x1401cc02a]
add cx, word [r11 + r9*2 - 2]
sub cx, word [r8 + r9*2 - 2]
mov r8, qword [rsp + 0x28]
jmp 0x1400d379f
inc rdi
mov word [r13 + 8], 0x402
mov byte [r13 + 0xa], 0
mov qword [r13], rdi
jmp 0x1400d338d
cmp r9d, 0x27
je 0x1400d369f
cmp r9d, 0x25
je 0x1400d3688
cmp r9d, 0x20
jne 0x1400d36c6
movzx ecx, r11b
lea r9, [0x1401cbcb8]
jmp 0x1400d36b0
mov word [r13 + 9], 2
mov qword [r13], rbx
jmp 0x1400d338d
mov word [r13 + 9], 2
mov qword [r13], rcx
jmp 0x1400d338d
lea rcx, [0x1401cc02a]
movzx ecx, word [rcx + r11*2]
mov r8, qword [rsp + 0x28]
jmp 0x1400d379f
add r10b, 0xbf
mov r9d, r10d
add cl, 0xe0
movzx ecx, cl
lea rcx, [rcx + rcx*2]
shl ecx, 5
movzx r10d, r9b
lea r9, [rcx + r10]
add r9, 0xfffffffffffffca0
cmp r9, 0x1f7b
jae 0x1400d35cd
mov rbp, r15
mov r11d, 0x65b
xor ecx, ecx
lea r10, [0x1401c6cb4]
mov ebx, 0x65b
shr r11, 1
add r11, rcx
movzx r12d, word [r10 + r11*2]
cmp r12w, r9w
je 0x1400d364a
lea r15, [r11 + 1]
cmp r12w, r9w
cmova rbx, r11
cmovb rcx, r15
mov r11, rbx
sub r11, rcx
ja 0x1400d3570
lea r11, [rcx - 1]
cmp r11, 0x65b
jae 0x1400d382e
mov r15, rbp
lea r11, [0x1401c796a]
add r9w, word [r11 + rcx*2 - 2]
sub r9w, word [r10 + rcx*2 - 2]
movzx ecx, r9w
jmp 0x1400d33b7
add rcx, r10
cmp ecx, 0x360
jae 0x1400d3662
mov r11d, 0x3b
xor r9d, r9d
lea r10, [0x1401c8620]
mov ebx, 0x3b
shr r11, 1
add r11, r9
movzx r12d, word [r10 + r11*2]
cmp r12w, cx
je 0x1400d3793
mov rbp, r15
lea r15, [r11 + 1]
cmp r12w, cx
cmova rbx, r11
cmovb r9, r15
mov r15, rbp
mov r11, rbx
sub r11, r9
ja 0x1400d35f1
lea r11, [r9 - 1]
cmp r11, 0x3b
jae 0x1400d385a
lea r11, [0x1401c8698]
add cx, word [r11 + r9*2 - 2]
sub cx, word [r10 + r9*2 - 2]
jmp 0x1400d379f
lea rcx, [0x1401c796a]
movzx r9d, word [rcx + r11*2]
mov r15, rbp
movzx ecx, r9w
jmp 0x1400d33b7
lea r11, [rcx - 0x22db]
cmp r11, 0x65
jae 0x1400d388a
lea r9, [0x1401c870e]
movzx ecx, word [r9 + rcx*2 - 0x45b6]
jmp 0x1400d33b7
add r10b, 0x20
cmp r10b, 0x15
ja 0x1400d36ea
movzx ecx, r10b
lea r9, [0x1401cbd74]
jmp 0x1400d36b0
cmp r11b, 0x20
jae 0x1400d36ea
movzx ecx, r11b
lea r9, [0x1401cbda0]
movzx ecx, word [r9 + rcx*2]
cmp ecx, 0x800
jae 0x1400d33b4
jmp 0x1400d377b
cmp cl, 0x76
jbe 0x1400d36ea
add cl, 0x89
movzx ecx, cl
imul ecx, ecx, 0x5e
movzx r9d, r11b
add ecx, r9d
add ecx, 0xffffe234
movzx r9d, cx
jmp 0x1400d33ba
mov rbp, r15
add cl, 0xdf
movzx ecx, cl
imul r9d, ecx, 0x5e
movzx ecx, r11b
add ecx, r9d
mov r11d, 0x2b
xor r9d, r9d
lea r10, [0x1401cbde0]
mov ebx, 0x2b
shr r11, 1
add r11, r9
movzx r12d, word [r10 + r11*2]
cmp cx, r12w
je 0x1400d375f
lea r15, [r11 + 1]
cmp cx, r12w
cmova r9, r15
cmovb rbx, r11
mov r11, rbx
sub r11, r9
ja 0x1400d3713
lea r11, [r9 - 1]
cmp r11, 0x2b
jae 0x1400d3872
lea r11, [0x1401cbe38]
add cx, word [r11 + r9*2 - 2]
sub cx, word [r10 + r9*2 - 2]
jmp 0x1400d376b
lea rcx, [0x1401cbe38]
movzx ecx, word [rcx + r11*2]
mov r15, rbp
movzx r9d, cx
cmp r9d, 0x800
jae 0x1400d37ce
mov eax, ecx
shr eax, 6
or al, 0xc0
mov byte [rsi + r14], al
and cl, 0x3f
or cl, 0x80
mov byte [rsi + r14 + 1], cl
jmp 0x1400d37c2
lea rcx, [0x1401c8698]
movzx ecx, word [rcx + r11*2]
movzx r9d, cx
cmp r9d, 0x800
jae 0x1400d37ce
mov eax, ecx
shr eax, 6
or al, 0xc0
mov byte [rsi + r14], al
and cl, 0x3f
or cl, 0x80
mov byte [rsi + r14 + 1], cl
or r14, 2
mov rax, r14
jmp 0x1400d33e5
mov ecx, r9d
shr ecx, 0xc
or cl, 0xe0
mov byte [rsi + r14], cl
mov ecx, r9d
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [rsi + r14 + 1], cl
and r9b, 0x3f
or r9b, 0x80
mov byte [rsi + r14 + 2], r9b
jmp 0x1400d33e5
lea r8, [0x1401cc4f0]
mov edx, 0x77c
mov rcx, 0xffffffffffffffff
call fcn.140196b20
lea r8, [0x1401cc4f0]
mov edx, 0xce
mov rcx, 0xffffffffffffffff
call fcn.140196b20
lea r8, [0x1401cc4f0]
mov edx, 0x65b
mov rcx, 0xffffffffffffffff
call fcn.140196b20
lea r8, str.C:UsersDylan_Reuter.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:UsersDylan_Reuter.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, r10
call fcn.140196b20
lea r8, [0x1401cc4f0]
mov edx, 0x3b
mov rcx, 0xffffffffffffffff
call fcn.140196b20
lea r8, [0x1401cc4f0]
mov edx, 0x2b
mov rcx, 0xffffffffffffffff
call fcn.140196b20
lea r8, str.C:UsersDylan_Reuter.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:UsersDylan_Reuter.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, r11
call fcn.140196b20
lea rax, [0x1401cc590]
mov rcx, r14
mov rdx, r8
mov r8, rax
call fcn.140196e10
int3