Function at 0x140107760
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 0x14010818b
cmp r9, 3
jb 0x14010825c
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 0x14010819a
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 0x140108a9b
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 0x14010782a
mov r13d, eax
neg r13d
and r13d, 7
lea r11, [r13 + 0x10]
cmp r11, r12
jbe 0x14010785f
mov r10, rsi
xor ebp, ebp
cmp rbp, r12
mov r13, qword [rsp + 0x40]
mov rsi, r10
jae 0x140108270
movzx r15d, byte [rax + rbp]
test r15b, r15b
js 0x1401079b3
mov byte [rbx + rbp], r15b
inc rbp
cmp r12, rbp
jne 0x140107840
jmp 0x140108270
test r13, r13
je 0x140107935
movzx r15d, byte [rax]
test r15b, r15b
js 0x1401079ac
mov byte [rbx], r15b
mov ebp, 1
cmp r13d, 1
je 0x140107937
movzx r15d, byte [rax + 1]
test r15b, r15b
js 0x1401079ae
mov byte [rbx + 1], r15b
mov ebp, 2
cmp r13d, 2
je 0x140107937
movzx r15d, byte [rax + 2]
test r15b, r15b
js 0x1401079ae
mov byte [rbx + 2], r15b
mov ebp, 3
cmp r13d, 3
je 0x140107937
movzx r15d, byte [rax + 3]
test r15b, r15b
js 0x1401079ae
mov byte [rbx + 3], r15b
mov ebp, 4
cmp r13d, 4
je 0x140107937
movzx r15d, byte [rax + 4]
test r15b, r15b
js 0x1401079ae
mov byte [rbx + 4], r15b
mov ebp, 5
cmp r13d, 5
je 0x140107937
movzx r15d, byte [rax + 5]
test r15b, r15b
js 0x1401079ae
mov byte [rbx + 5], r15b
mov ebp, 6
cmp r13d, 6
je 0x140107937
movzx r15d, byte [rax + 6]
test r15b, r15b
js 0x1401079ae
mov byte [rbx + 6], r15b
mov ebp, 7
jmp 0x140107937
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 0x140107988
add rbp, 0x10
cmp rbp, r15
jbe 0x140107950
jmp 0x14010782f
test r11, r11
je 0x140108157
tzcnt r9, r11
shr r9d, 3
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov rsi, r10
jmp 0x14010817e
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 0x1401085ea
inc rcx
mov rax, rcx
lea rbp, [0x14020e03a]
lea r9d, [r15 + 0x7f]
cmp r9b, 0x7d
ja 0x1401080fc
cmp rax, r12
jae 0x14010835f
movzx r10d, byte [r8 + rax]
lea rcx, [rax + 1]
lea r11d, [r10 - 0x30]
cmp r11b, 9
jbe 0x140107a50
cmp r9b, 0x1f
jbe 0x140107b00
lea r11d, [r10 + 0x5f]
cmp r11b, 0x5e
jae 0x140107c08
lea eax, [r15 + 0x50]
cmp al, 0x48
jae 0x140107dc9
movzx eax, al
imul eax, eax, 0x5e
movzx r9d, r11b
add r9d, eax
lea rax, [0x1402082f6]
movzx eax, word [rax + r9*2]
jmp 0x140107cd4
cmp rcx, r12
jae 0x140108498
movzx ebx, byte [r8 + rax + 1]
add bl, 0x7f
cmp bl, 0x7d
ja 0x1401084af
lea rcx, [rax + 2]
cmp rcx, r12
jae 0x1401084c8
movzx ebp, byte [r8 + rax + 2]
add bpl, 0xd0
cmp bpl, 9
ja 0x1401084e7
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 0x140107b95
cmp rcx, 0x1d21
lea rbp, [0x14020e03a]
jne 0x140107d10
mov r14, qword [rsp + 0x20]
mov word [r14 + rdi], 0x9fee
mov byte [r14 + rdi + 2], 0x87
mov r9d, 3
jmp 0x140107ed0
lea r11d, [r10 - 0x40]
cmp r11b, 0x3e
jbe 0x140107b1b
cmp r10b, 0xfe
jg 0x14010864a
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 0x140107cc5
lea rsi, [r10 + 1]
cmp ax, bx
cmova r9, rsi
cmovb r11, r10
mov r10, r11
sub r10, r9
ja 0x140107b40
lea r10, [r9 - 1]
cmp r10, 0x77c
jae 0x140108aaf
lea r10, [0x14020d142]
add ax, word [r10 + r9*2 - 2]
sub ax, word [rbp + r9*2 - 2]
jmp 0x140107cd1
lea r9, [rcx - 0x2e248]
cmp r9, 0x100000
lea rbp, [0x14020e03a]
jae 0x140108568
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 0x140107ed0
lea r9d, [r10 - 0x40]
cmp r9b, 0x3e
jbe 0x140107c23
cmp r10b, 0xa0
jg 0x14010864a
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 0x140107dfd
mov r10d, 0x65b
xor eax, eax
mov r11d, 0x65b
nop dword [rax]
shr r10, 1
add r10, rax
lea rsi, [0x14020c48c]
movzx ebx, word [rsi + r10*2]
cmp bx, r9w
je 0x140107f0f
lea rsi, [r10 + 1]
cmp bx, r9w
cmova r11, r10
cmovb rax, rsi
mov r10, r11
sub r10, rax
ja 0x140107c60
lea r10, [rax - 1]
cmp r10, 0x65b
jae 0x140108aee
lea r10, [0x14020b7d6]
add r9w, word [r10 + rax*2 - 2]
lea r10, [0x14020c48c]
sub r9w, word [r10 + rax*2 - 2]
movzx eax, r9w
jmp 0x140107cd4
lea rax, [0x14020d142]
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 0x140107ed3
mov r10d, 0xce
xor r9d, r9d
mov r11d, 0xce
nop
shr r10, 1
add r10, r9
lea rsi, [0x14020ef32]
movzx ebx, word [rsi + r10*2]
cmp bx, cx
je 0x140107e7f
lea rsi, [r10 + 1]
cmp bx, cx
cmova r11, r10
cmovb r9, rsi
mov r10, r11
sub r10, r9
ja 0x140107d20
lea r10, [r9 - 1]
cmp r10, 0xce
jae 0x140108ad6
lea r10, [0x14020f0ce]
add cx, word [r10 + r9*2 - 2]
lea r10, [0x14020ef32]
sub cx, word [r10 + r9*2 - 2]
movzx r9d, cx
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jb 0x140107ea1
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 0x140107ed0
cmp r15b, 0xa8
je 0x140107f65
movzx eax, r15b
cmp eax, 0xa6
je 0x140107f4a
cmp eax, 0xa1
jne 0x140107fe7
movzx eax, r11b
lea r9, [0x140207f68]
jmp 0x140107f7a
add rax, r10
cmp eax, 0x360
jae 0x140107f24
mov r10d, 0x3b
xor r9d, r9d
mov r11d, 0x3b
nop word [rax + rax]
shr r10, 1
add r10, r9
lea rsi, [0x140208174]
movzx ebx, word [rsi + r10*2]
cmp bx, ax
je 0x140107fa2
lea rsi, [r10 + 1]
cmp bx, ax
cmova r11, r10
cmovb r9, rsi
mov r10, r11
sub r10, r9
ja 0x140107e20
lea r10, [r9 - 1]
cmp r10, 0x3b
jae 0x140108b1a
lea r10, [0x1402080fe]
add ax, word [r10 + r9*2 - 2]
lea r10, [0x140208174]
sub ax, word [r10 + r9*2 - 2]
jmp 0x140107fae
lea rcx, [0x14020f0ce]
movzx ecx, word [rcx + r10*2]
movzx r9d, cx
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jae 0x140107d93
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 0x1401085c9
lea rax, [rdi + 3]
mov r9, qword [rsp + 0x28]
cmp rax, r9
jae 0x140108379
movzx r15d, byte [r8 + rcx]
inc rcx
mov rax, rcx
test r15b, r15b
js 0x1401079e4
jmp 0x14010813a
lea rax, [0x14020b7d6]
movzx r9d, word [rax + r10*2]
movzx eax, r9w
jmp 0x140107cd4
lea r10, [rax - 0x22db]
cmp r10, 0x65
jae 0x140108b06
lea r9, [0x1402081ec]
movzx eax, word [r9 + rax*2 - 0x45b6]
jmp 0x140107cd4
add r10b, 0x20
cmp r10b, 0x15
ja 0x14010800d
movzx eax, r10b
lea r9, [0x140208024]
jmp 0x140107f7a
cmp r11b, 0x20
jae 0x14010800d
movzx eax, r11b
lea r9, [0x1402082b6]
movzx eax, word [r9 + rax*2]
mov r14, qword [rsp + 0x20]
cmp eax, 0x800
jb 0x1401080a6
movzx eax, ax
mov r9d, eax
shr r9d, 0xc
or r9b, 0xe0
jmp 0x140107ce4
lea rax, [0x1402080fe]
movzx eax, word [rax + r10*2]
movzx r9d, ax
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jae 0x1401080c9
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 0x140107ed3
cmp r9b, 0x76
jbe 0x14010800d
add r15b, 8
movzx eax, r15b
imul eax, eax, 0x5e
movzx r9d, r11b
add eax, r9d
add eax, 0xffffe234
movzx r9d, ax
jmp 0x140107cd7
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, [0x1402080a6]
movzx ebx, word [rsi + r10*2]
cmp ax, bx
je 0x140108088
lea rsi, [r10 + 1]
cmp ax, bx
cmova r9, rsi
cmovb r11, r10
mov r10, r11
sub r10, r9
ja 0x140108030
lea r10, [r9 - 1]
cmp r10, 0x2b
jae 0x140108b32
lea r10, [0x140208050]
add ax, word [r10 + r9*2 - 2]
lea r10, [0x1402080a6]
sub ax, word [r10 + r9*2 - 2]
jmp 0x140108094
lea rax, [0x140208050]
movzx eax, word [rax + r10*2]
movzx r9d, ax
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jae 0x1401080c9
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 0x140107ed3
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 0x140107ed3
cmp r15b, 0x80
jne 0x14010836d
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 0x1401077e2
jmp 0x140108ac7
mov byte [r14 + rdi], r15b
inc rdi
mov rsi, rdi
mov qword [rsp + 0x30], rsi
cmp rcx, r12
jbe 0x1401077e2
jmp 0x140108ac7
test rsi, rsi
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
je 0x14010816d
tzcnt r9, rsi
jmp 0x140108173
mov r9d, 0x40
mov rsi, r10
shr r9d, 3
add r9, 8
add rbp, r9
movzx r15d, byte [rax + rbp]
jmp 0x1401079b8
xor edi, edi
movzx ebp, byte [rdx + 8]
test bpl, bpl
je 0x1401077d3
test r12, r12
je 0x140108237
lea rsi, [rdi + 3]
cmp rsi, r9
jae 0x14010829c
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 0x140108210
movzx r11d, bpl
cmp r11d, 2
jne 0x1401082bc
mov byte [rdx + 8], 0
add r15b, 0x7f
cmp r15b, 0x7d
ja 0x1401082fa
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 0x1401081c0
jmp 0x140108237
mov byte [rdx + 8], 0
lea ecx, [r15 - 0x30]
cmp cl, 9
ja 0x140108319
mov byte [rdx + 8], 2
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], cl
mov bpl, 2
inc rax
cmp r12, rax
jne 0x1401081c0
cmp byte [rsp + 0xd0], 0
je 0x1401082ae
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 0x1401085d2
mov byte [r13 + 8], 1
mov qword [r13], 0
xor edi, edi
jmp 0x1401085d2
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 0x1401085d2
mov byte [r13 + 8], 1
mov qword [r13], 0
jmp 0x1401085d2
mov byte [r13 + 8], 0
mov qword [r13], r12
jmp 0x1401085d2
movzx r9d, byte [rdx + 0xb]
mov byte [rdx + 8], 0
add r15b, 0xd0
cmp r15b, 9
jbe 0x140108383
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 0x1401085d2
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 0x1401085d2
lea rcx, [rax + 1]
cmp r9b, 0x1f
jbe 0x1401083d8
lea ebp, [r15 + 0x5f]
cmp bpl, 0x5e
jae 0x14010857a
lea eax, [r9 - 0x2f]
cmp al, 0x48
jae 0x1401086d5
movzx eax, al
imul eax, eax, 0x5e
movzx r9d, bpl
add r9d, eax
lea rax, [0x1402082f6]
movzx eax, word [rax + r9*2]
jmp 0x14010860c
cmp byte [rsp + 0xd0], 0
je 0x140108482
mov word [r13 + 8], 0x102
jmp 0x14010856f
mov byte [r13 + 8], 1
jmp 0x1401085ce
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 0x140108507
cmp ecx, 0x1d21
jne 0x140108664
mov word [r14 + rdi], 0x9fee
mov byte [r14 + rdi + 2], 0x87
jmp 0x14010876d
lea r9d, [r15 - 0x40]
cmp r9b, 0x3e
jbe 0x1401083f3
cmp r15b, 0xfe
jg 0x140108591
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, [0x14020e03a]
mov r12d, 0x77c
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp ax, r11w
je 0x1401085f4
lea rsi, [r15 + 1]
cmp ax, r11w
cmova r9, rsi
cmovb r12, r15
mov r15, r12
sub r15, r9
ja 0x140108423
lea r11, [r9 - 1]
cmp r11, 0x77c
jae 0x140108aaf
mov r12, r8
mov rsi, r10
lea r11, [0x14020d142]
add ax, word [r11 + r9*2 - 2]
sub ax, word [rbx + r9*2 - 2]
mov r8, rbp
jmp 0x140108609
mov byte [rdx + 8], 1
mov byte [rdx + 9], r9b
mov byte [r13 + 8], 0
mov qword [r13], rax
jmp 0x1401085d2
cmp byte [rsp + 0xd0], 0
je 0x1401085ac
mov word [r13 + 8], 0x202
jmp 0x1401084dd
mov byte [rdx + 6], 1
mov byte [rdx + 7], r10b
mov word [r13 + 8], 0x102
mov byte [r13 + 0xa], 1
jmp 0x1401085ce
cmp byte [rsp + 0xd0], 0
je 0x1401085ba
mov word [r13 + 8], 0x302
mov byte [r13 + 0xa], 0
jmp 0x1401085ce
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 0x1401085ce
lea r9, [rcx - 0x2e248]
cmp r9, 0x100000
jae 0x140108568
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 0x14010873d
mov word [r13 + 8], 0x402
mov byte [r13 + 0xa], 0
mov qword [r13], rax
jmp 0x1401085d2
lea ebx, [r15 - 0x40]
cmp bl, 0x3e
jbe 0x140108784
cmp r15b, 0xa0
jle 0x14010877d
mov byte [r13 + 8], 2
test r15b, r15b
js 0x140108658
mov word [r13 + 9], 1
mov qword [r13], rax
jmp 0x1401085d2
mov byte [rdx + 8], 2
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], r11b
jmp 0x1401085c9
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 0x140108281
lea rax, [0x14020d142]
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 0x1401077d8
mov byte [r13 + 8], 2
test r10b, r10b
jns 0x14010859f
mov word [r13 + 9], 2
jmp 0x1401085ce
mov rbp, r8
mov r8, r12
mov r15d, 0xce
xor r9d, r9d
lea rbx, [0x14020ef32]
mov r12d, 0xce
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp r11w, cx
je 0x140108700
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 0x140108680
lea r11, [r9 - 1]
cmp r11, 0xce
jae 0x140108ad6
lea r11, [0x14020f0ce]
add cx, word [r11 + r9*2 - 2]
sub cx, word [rbx + r9*2 - 2]
jmp 0x14010870c
cmp ebx, 0x27
je 0x14010890d
cmp ebx, 0x25
je 0x1401088f6
cmp ebx, 0x20
jne 0x140108933
movzx eax, bpl
lea r9, [0x140207f68]
jmp 0x14010891e
lea rcx, [0x14020f0ce]
movzx ecx, word [rcx + r15*2]
mov r12, r8
movzx r9d, cx
cmp r9d, 0x800
mov r8, rbp
jae 0x140108742
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 0x14010876d
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 0x1401077d8
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 0x14010882f
mov r10, rsi
mov rbp, r8
mov r8, r12
mov r15d, 0x65b
xor r9d, r9d
lea rbx, [0x14020c48c]
mov r12d, 0x65b
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp r11w, ax
je 0x1401088b3
lea rsi, [r15 + 1]
cmp r11w, ax
cmova r12, r15
cmovb r9, rsi
mov r15, r12
sub r15, r9
ja 0x1401087cd
lea r11, [r9 - 1]
cmp r11, 0x65b
jae 0x140108aee
mov r12, r8
mov rsi, r10
lea r11, [0x14020b7d6]
add ax, word [r11 + r9*2 - 2]
sub ax, word [rbx + r9*2 - 2]
mov r8, rbp
movzx eax, ax
jmp 0x14010860c
add r9, r11
cmp r9d, 0x360
jae 0x1401088d0
mov rbp, r8
mov r8, r12
mov r15d, 0x3b
xor eax, eax
lea rbx, [0x140208174]
mov r12d, 0x3b
shr r15, 1
add r15, rax
movzx r11d, word [rbx + r15*2]
cmp r11w, r9w
je 0x140108a1b
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 0x14010885a
lea r11, [rax - 1]
cmp r11, 0x3b
jae 0x140108b1a
lea r11, [0x1402080fe]
add r9w, word [r11 + rax*2 - 2]
sub r9w, word [rbx + rax*2 - 2]
jmp 0x140108a27
lea rax, [0x14020b7d6]
movzx eax, word [rax + r15*2]
mov r12, r8
mov r8, rbp
mov rsi, r10
movzx eax, ax
jmp 0x14010860c
lea rax, [r9 - 0x22db]
cmp rax, 0x65
jae 0x140108b4a
lea rax, [0x1402081ec]
movzx eax, word [rax + r9*2 - 0x45b6]
jmp 0x14010860c
add r15b, 0x20
cmp r15b, 0x15
ja 0x140108959
movzx eax, r15b
lea r9, [0x140208024]
jmp 0x14010891e
cmp bpl, 0x20
jae 0x140108959
movzx eax, bpl
lea r9, [0x1402082b6]
movzx eax, word [r9 + rax*2]
cmp eax, 0x800
jae 0x140108609
jmp 0x140108a01
cmp r9b, 0x76
jbe 0x140108959
add r9b, 0x89
movzx eax, r9b
imul eax, eax, 0x5e
movzx r9d, bpl
add eax, r9d
add eax, 0xffffe234
movzx r9d, ax
jmp 0x14010860f
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, [0x1402080a6]
mov r12d, 0x2b
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp ax, r11w
je 0x1401089db
lea rsi, [r15 + 1]
cmp ax, r11w
cmova r9, rsi
cmovb r12, r15
mov r15, r12
sub r15, r9
ja 0x14010898f
lea r11, [r9 - 1]
cmp r11, 0x2b
jae 0x140108b32
lea r11, [0x140208050]
add ax, word [r11 + r9*2 - 2]
sub ax, word [rbx + r9*2 - 2]
jmp 0x1401089e7
lea rax, [0x140208050]
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 0x140108a6e
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 0x140108a55
lea rax, [0x1402080fe]
movzx r9d, word [rax + r15*2]
mov r12, r8
movzx eax, r9w
cmp eax, 0x800
mov r8, rbp
jae 0x14010860c
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 0x1401077d8
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 0x140108638
lea r8, [0x140226660]
mov rcx, rsi
mov rdx, qword [rsp + 0x48]
call fcn.1401eb6f0
lea r8, [0x1402265e0]
mov edx, 0x77c
mov rcx, 0xffffffffffffffff
call fcn.1401eb3c0
lea r8, [0x140226678]
mov rdx, r12
call fcn.1401eb6f0
lea r8, [0x1402265e0]
mov edx, 0xce
mov rcx, 0xffffffffffffffff
call fcn.1401eb3c0
lea r8, [0x1402265e0]
mov edx, 0x65b
mov rcx, 0xffffffffffffffff
call fcn.1401eb3c0
lea r8, str.C:Usersjorki.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:Usersjorki.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, r10
call fcn.1401eb3c0
lea r8, [0x1402265e0]
mov edx, 0x3b
mov rcx, 0xffffffffffffffff
call fcn.1401eb3c0
lea r8, [0x1402265e0]
mov edx, 0x2b
mov rcx, 0xffffffffffffffff
call fcn.1401eb3c0
lea r8, str.C:Usersjorki.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:Usersjorki.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, rax
call fcn.1401eb3c0
int3