Function at 0x140103080
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 0x140103aab
cmp r9, 3
jb 0x140103b7c
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 0x140103aba
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 0x1401043bb
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 0x14010314a
mov r13d, eax
neg r13d
and r13d, 7
lea r11, [r13 + 0x10]
cmp r11, r12
jbe 0x14010317f
mov r10, rsi
xor ebp, ebp
cmp rbp, r12
mov r13, qword [rsp + 0x40]
mov rsi, r10
jae 0x140103b90
movzx r15d, byte [rax + rbp]
test r15b, r15b
js 0x1401032d3
mov byte [rbx + rbp], r15b
inc rbp
cmp r12, rbp
jne 0x140103160
jmp 0x140103b90
test r13, r13
je 0x140103255
movzx r15d, byte [rax]
test r15b, r15b
js 0x1401032cc
mov byte [rbx], r15b
mov ebp, 1
cmp r13d, 1
je 0x140103257
movzx r15d, byte [rax + 1]
test r15b, r15b
js 0x1401032ce
mov byte [rbx + 1], r15b
mov ebp, 2
cmp r13d, 2
je 0x140103257
movzx r15d, byte [rax + 2]
test r15b, r15b
js 0x1401032ce
mov byte [rbx + 2], r15b
mov ebp, 3
cmp r13d, 3
je 0x140103257
movzx r15d, byte [rax + 3]
test r15b, r15b
js 0x1401032ce
mov byte [rbx + 3], r15b
mov ebp, 4
cmp r13d, 4
je 0x140103257
movzx r15d, byte [rax + 4]
test r15b, r15b
js 0x1401032ce
mov byte [rbx + 4], r15b
mov ebp, 5
cmp r13d, 5
je 0x140103257
movzx r15d, byte [rax + 5]
test r15b, r15b
js 0x1401032ce
mov byte [rbx + 5], r15b
mov ebp, 6
cmp r13d, 6
je 0x140103257
movzx r15d, byte [rax + 6]
test r15b, r15b
js 0x1401032ce
mov byte [rbx + 6], r15b
mov ebp, 7
jmp 0x140103257
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 0x1401032a8
add rbp, 0x10
cmp rbp, r15
jbe 0x140103270
jmp 0x14010314f
test r11, r11
je 0x140103a77
tzcnt r9, r11
shr r9d, 3
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov rsi, r10
jmp 0x140103a9e
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 0x140103f0a
inc rcx
mov rax, rcx
lea rbp, [0x1402675fa]
lea r9d, [r15 + 0x7f]
cmp r9b, 0x7d
ja 0x140103a1c
cmp rax, r12
jae 0x140103c7f
movzx r10d, byte [r8 + rax]
lea rcx, [rax + 1]
lea r11d, [r10 - 0x30]
cmp r11b, 9
jbe 0x140103370
cmp r9b, 0x1f
jbe 0x140103420
lea r11d, [r10 + 0x5f]
cmp r11b, 0x5e
jae 0x140103528
lea eax, [r15 + 0x50]
cmp al, 0x48
jae 0x1401036e9
movzx eax, al
imul eax, eax, 0x5e
movzx r9d, r11b
add r9d, eax
lea rax, [0x1402618b6]
movzx eax, word [rax + r9*2]
jmp 0x1401035f4
cmp rcx, r12
jae 0x140103db8
movzx ebx, byte [r8 + rax + 1]
add bl, 0x7f
cmp bl, 0x7d
ja 0x140103dcf
lea rcx, [rax + 2]
cmp rcx, r12
jae 0x140103de8
movzx ebp, byte [r8 + rax + 2]
add bpl, 0xd0
cmp bpl, 9
ja 0x140103e07
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 0x1401034b5
cmp rcx, 0x1d21
lea rbp, [0x1402675fa]
jne 0x140103630
mov r14, qword [rsp + 0x20]
mov word [r14 + rdi], 0x9fee
mov byte [r14 + rdi + 2], 0x87
mov r9d, 3
jmp 0x1401037f0
lea r11d, [r10 - 0x40]
cmp r11b, 0x3e
jbe 0x14010343b
cmp r10b, 0xfe
jg 0x140103f6a
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 0x1401035e5
lea rsi, [r10 + 1]
cmp ax, bx
cmova r9, rsi
cmovb r11, r10
mov r10, r11
sub r10, r9
ja 0x140103460
lea r10, [r9 - 1]
cmp r10, 0x77c
jae 0x1401043cf
lea r10, [0x140266702]
add ax, word [r10 + r9*2 - 2]
sub ax, word [rbp + r9*2 - 2]
jmp 0x1401035f1
lea r9, [rcx - 0x2e248]
cmp r9, 0x100000
lea rbp, [0x1402675fa]
jae 0x140103e88
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 0x1401037f0
lea r9d, [r10 - 0x40]
cmp r9b, 0x3e
jbe 0x140103543
cmp r10b, 0xa0
jg 0x140103f6a
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 0x14010371d
mov r10d, 0x65b
xor eax, eax
mov r11d, 0x65b
nop dword [rax]
shr r10, 1
add r10, rax
lea rsi, [0x140265a4c]
movzx ebx, word [rsi + r10*2]
cmp bx, r9w
je 0x14010382f
lea rsi, [r10 + 1]
cmp bx, r9w
cmova r11, r10
cmovb rax, rsi
mov r10, r11
sub r10, rax
ja 0x140103580
lea r10, [rax - 1]
cmp r10, 0x65b
jae 0x14010440e
lea r10, [0x140264d96]
add r9w, word [r10 + rax*2 - 2]
lea r10, [0x140265a4c]
sub r9w, word [r10 + rax*2 - 2]
movzx eax, r9w
jmp 0x1401035f4
lea rax, [0x140266702]
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 0x1401037f3
mov r10d, 0xce
xor r9d, r9d
mov r11d, 0xce
nop
shr r10, 1
add r10, r9
lea rsi, [0x1402684f2]
movzx ebx, word [rsi + r10*2]
cmp bx, cx
je 0x14010379f
lea rsi, [r10 + 1]
cmp bx, cx
cmova r11, r10
cmovb r9, rsi
mov r10, r11
sub r10, r9
ja 0x140103640
lea r10, [r9 - 1]
cmp r10, 0xce
jae 0x1401043f6
lea r10, [0x14026868e]
add cx, word [r10 + r9*2 - 2]
lea r10, [0x1402684f2]
sub cx, word [r10 + r9*2 - 2]
movzx r9d, cx
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jb 0x1401037c1
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 0x1401037f0
cmp r15b, 0xa8
je 0x140103885
movzx eax, r15b
cmp eax, 0xa6
je 0x14010386a
cmp eax, 0xa1
jne 0x140103907
movzx eax, r11b
lea r9, [0x140261528]
jmp 0x14010389a
add rax, r10
cmp eax, 0x360
jae 0x140103844
mov r10d, 0x3b
xor r9d, r9d
mov r11d, 0x3b
nop word [rax + rax]
shr r10, 1
add r10, r9
lea rsi, [0x140261734]
movzx ebx, word [rsi + r10*2]
cmp bx, ax
je 0x1401038c2
lea rsi, [r10 + 1]
cmp bx, ax
cmova r11, r10
cmovb r9, rsi
mov r10, r11
sub r10, r9
ja 0x140103740
lea r10, [r9 - 1]
cmp r10, 0x3b
jae 0x14010443a
lea r10, [0x1402616be]
add ax, word [r10 + r9*2 - 2]
lea r10, [0x140261734]
sub ax, word [r10 + r9*2 - 2]
jmp 0x1401038ce
lea rcx, [0x14026868e]
movzx ecx, word [rcx + r10*2]
movzx r9d, cx
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jae 0x1401036b3
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 0x140103ee9
lea rax, [rdi + 3]
mov r9, qword [rsp + 0x28]
cmp rax, r9
jae 0x140103c99
movzx r15d, byte [r8 + rcx]
inc rcx
mov rax, rcx
test r15b, r15b
js 0x140103304
jmp 0x140103a5a
lea rax, [0x140264d96]
movzx r9d, word [rax + r10*2]
movzx eax, r9w
jmp 0x1401035f4
lea r10, [rax - 0x22db]
cmp r10, 0x65
jae 0x140104426
lea r9, [0x1402617ac]
movzx eax, word [r9 + rax*2 - 0x45b6]
jmp 0x1401035f4
add r10b, 0x20
cmp r10b, 0x15
ja 0x14010392d
movzx eax, r10b
lea r9, [0x1402615e4]
jmp 0x14010389a
cmp r11b, 0x20
jae 0x14010392d
movzx eax, r11b
lea r9, [0x140261876]
movzx eax, word [r9 + rax*2]
mov r14, qword [rsp + 0x20]
cmp eax, 0x800
jb 0x1401039c6
movzx eax, ax
mov r9d, eax
shr r9d, 0xc
or r9b, 0xe0
jmp 0x140103604
lea rax, [0x1402616be]
movzx eax, word [rax + r10*2]
movzx r9d, ax
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jae 0x1401039e9
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 0x1401037f3
cmp r9b, 0x76
jbe 0x14010392d
add r15b, 8
movzx eax, r15b
imul eax, eax, 0x5e
movzx r9d, r11b
add eax, r9d
add eax, 0xffffe234
movzx r9d, ax
jmp 0x1401035f7
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, [0x140261666]
movzx ebx, word [rsi + r10*2]
cmp ax, bx
je 0x1401039a8
lea rsi, [r10 + 1]
cmp ax, bx
cmova r9, rsi
cmovb r11, r10
mov r10, r11
sub r10, r9
ja 0x140103950
lea r10, [r9 - 1]
cmp r10, 0x2b
jae 0x140104452
lea r10, [0x140261610]
add ax, word [r10 + r9*2 - 2]
lea r10, [0x140261666]
sub ax, word [r10 + r9*2 - 2]
jmp 0x1401039b4
lea rax, [0x140261610]
movzx eax, word [rax + r10*2]
movzx r9d, ax
mov r14, qword [rsp + 0x20]
cmp r9d, 0x800
jae 0x1401039e9
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 0x1401037f3
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 0x1401037f3
cmp r15b, 0x80
jne 0x140103c8d
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 0x140103102
jmp 0x1401043e7
mov byte [r14 + rdi], r15b
inc rdi
mov rsi, rdi
mov qword [rsp + 0x30], rsi
cmp rcx, r12
jbe 0x140103102
jmp 0x1401043e7
test rsi, rsi
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
je 0x140103a8d
tzcnt r9, rsi
jmp 0x140103a93
mov r9d, 0x40
mov rsi, r10
shr r9d, 3
add r9, 8
add rbp, r9
movzx r15d, byte [rax + rbp]
jmp 0x1401032d8
xor edi, edi
movzx ebp, byte [rdx + 8]
test bpl, bpl
je 0x1401030f3
test r12, r12
je 0x140103b57
lea rsi, [rdi + 3]
cmp rsi, r9
jae 0x140103bbc
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 0x140103b30
movzx r11d, bpl
cmp r11d, 2
jne 0x140103bdc
mov byte [rdx + 8], 0
add r15b, 0x7f
cmp r15b, 0x7d
ja 0x140103c1a
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 0x140103ae0
jmp 0x140103b57
mov byte [rdx + 8], 0
lea ecx, [r15 - 0x30]
cmp cl, 9
ja 0x140103c39
mov byte [rdx + 8], 2
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], cl
mov bpl, 2
inc rax
cmp r12, rax
jne 0x140103ae0
cmp byte [rsp + 0xd0], 0
je 0x140103bce
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 0x140103ef2
mov byte [r13 + 8], 1
mov qword [r13], 0
xor edi, edi
jmp 0x140103ef2
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 0x140103ef2
mov byte [r13 + 8], 1
mov qword [r13], 0
jmp 0x140103ef2
mov byte [r13 + 8], 0
mov qword [r13], r12
jmp 0x140103ef2
movzx r9d, byte [rdx + 0xb]
mov byte [rdx + 8], 0
add r15b, 0xd0
cmp r15b, 9
jbe 0x140103ca3
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 0x140103ef2
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 0x140103ef2
lea rcx, [rax + 1]
cmp r9b, 0x1f
jbe 0x140103cf8
lea ebp, [r15 + 0x5f]
cmp bpl, 0x5e
jae 0x140103e9a
lea eax, [r9 - 0x2f]
cmp al, 0x48
jae 0x140103ff5
movzx eax, al
imul eax, eax, 0x5e
movzx r9d, bpl
add r9d, eax
lea rax, [0x1402618b6]
movzx eax, word [rax + r9*2]
jmp 0x140103f2c
cmp byte [rsp + 0xd0], 0
je 0x140103da2
mov word [r13 + 8], 0x102
jmp 0x140103e8f
mov byte [r13 + 8], 1
jmp 0x140103eee
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 0x140103e27
cmp ecx, 0x1d21
jne 0x140103f84
mov word [r14 + rdi], 0x9fee
mov byte [r14 + rdi + 2], 0x87
jmp 0x14010408d
lea r9d, [r15 - 0x40]
cmp r9b, 0x3e
jbe 0x140103d13
cmp r15b, 0xfe
jg 0x140103eb1
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, [0x1402675fa]
mov r12d, 0x77c
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp ax, r11w
je 0x140103f14
lea rsi, [r15 + 1]
cmp ax, r11w
cmova r9, rsi
cmovb r12, r15
mov r15, r12
sub r15, r9
ja 0x140103d43
lea r11, [r9 - 1]
cmp r11, 0x77c
jae 0x1401043cf
mov r12, r8
mov rsi, r10
lea r11, [0x140266702]
add ax, word [r11 + r9*2 - 2]
sub ax, word [rbx + r9*2 - 2]
mov r8, rbp
jmp 0x140103f29
mov byte [rdx + 8], 1
mov byte [rdx + 9], r9b
mov byte [r13 + 8], 0
mov qword [r13], rax
jmp 0x140103ef2
cmp byte [rsp + 0xd0], 0
je 0x140103ecc
mov word [r13 + 8], 0x202
jmp 0x140103dfd
mov byte [rdx + 6], 1
mov byte [rdx + 7], r10b
mov word [r13 + 8], 0x102
mov byte [r13 + 0xa], 1
jmp 0x140103eee
cmp byte [rsp + 0xd0], 0
je 0x140103eda
mov word [r13 + 8], 0x302
mov byte [r13 + 0xa], 0
jmp 0x140103eee
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 0x140103eee
lea r9, [rcx - 0x2e248]
cmp r9, 0x100000
jae 0x140103e88
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 0x14010405d
mov word [r13 + 8], 0x402
mov byte [r13 + 0xa], 0
mov qword [r13], rax
jmp 0x140103ef2
lea ebx, [r15 - 0x40]
cmp bl, 0x3e
jbe 0x1401040a4
cmp r15b, 0xa0
jle 0x14010409d
mov byte [r13 + 8], 2
test r15b, r15b
js 0x140103f78
mov word [r13 + 9], 1
mov qword [r13], rax
jmp 0x140103ef2
mov byte [rdx + 8], 2
mov byte [rdx + 9], r9b
mov byte [rdx + 0xa], r11b
jmp 0x140103ee9
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 0x140103ba1
lea rax, [0x140266702]
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 0x1401030f8
mov byte [r13 + 8], 2
test r10b, r10b
jns 0x140103ebf
mov word [r13 + 9], 2
jmp 0x140103eee
mov rbp, r8
mov r8, r12
mov r15d, 0xce
xor r9d, r9d
lea rbx, [0x1402684f2]
mov r12d, 0xce
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp r11w, cx
je 0x140104020
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 0x140103fa0
lea r11, [r9 - 1]
cmp r11, 0xce
jae 0x1401043f6
lea r11, [0x14026868e]
add cx, word [r11 + r9*2 - 2]
sub cx, word [rbx + r9*2 - 2]
jmp 0x14010402c
cmp ebx, 0x27
je 0x14010422d
cmp ebx, 0x25
je 0x140104216
cmp ebx, 0x20
jne 0x140104253
movzx eax, bpl
lea r9, [0x140261528]
jmp 0x14010423e
lea rcx, [0x14026868e]
movzx ecx, word [rcx + r15*2]
mov r12, r8
movzx r9d, cx
cmp r9d, 0x800
mov r8, rbp
jae 0x140104062
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 0x14010408d
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 0x1401030f8
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 0x14010414f
mov r10, rsi
mov rbp, r8
mov r8, r12
mov r15d, 0x65b
xor r9d, r9d
lea rbx, [0x140265a4c]
mov r12d, 0x65b
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp r11w, ax
je 0x1401041d3
lea rsi, [r15 + 1]
cmp r11w, ax
cmova r12, r15
cmovb r9, rsi
mov r15, r12
sub r15, r9
ja 0x1401040ed
lea r11, [r9 - 1]
cmp r11, 0x65b
jae 0x14010440e
mov r12, r8
mov rsi, r10
lea r11, [0x140264d96]
add ax, word [r11 + r9*2 - 2]
sub ax, word [rbx + r9*2 - 2]
mov r8, rbp
movzx eax, ax
jmp 0x140103f2c
add r9, r11
cmp r9d, 0x360
jae 0x1401041f0
mov rbp, r8
mov r8, r12
mov r15d, 0x3b
xor eax, eax
lea rbx, [0x140261734]
mov r12d, 0x3b
shr r15, 1
add r15, rax
movzx r11d, word [rbx + r15*2]
cmp r11w, r9w
je 0x14010433b
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 0x14010417a
lea r11, [rax - 1]
cmp r11, 0x3b
jae 0x14010443a
lea r11, [0x1402616be]
add r9w, word [r11 + rax*2 - 2]
sub r9w, word [rbx + rax*2 - 2]
jmp 0x140104347
lea rax, [0x140264d96]
movzx eax, word [rax + r15*2]
mov r12, r8
mov r8, rbp
mov rsi, r10
movzx eax, ax
jmp 0x140103f2c
lea rax, [r9 - 0x22db]
cmp rax, 0x65
jae 0x14010446a
lea rax, [0x1402617ac]
movzx eax, word [rax + r9*2 - 0x45b6]
jmp 0x140103f2c
add r15b, 0x20
cmp r15b, 0x15
ja 0x140104279
movzx eax, r15b
lea r9, [0x1402615e4]
jmp 0x14010423e
cmp bpl, 0x20
jae 0x140104279
movzx eax, bpl
lea r9, [0x140261876]
movzx eax, word [r9 + rax*2]
cmp eax, 0x800
jae 0x140103f29
jmp 0x140104321
cmp r9b, 0x76
jbe 0x140104279
add r9b, 0x89
movzx eax, r9b
imul eax, eax, 0x5e
movzx r9d, bpl
add eax, r9d
add eax, 0xffffe234
movzx r9d, ax
jmp 0x140103f2f
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, [0x140261666]
mov r12d, 0x2b
shr r15, 1
add r15, r9
movzx r11d, word [rbx + r15*2]
cmp ax, r11w
je 0x1401042fb
lea rsi, [r15 + 1]
cmp ax, r11w
cmova r9, rsi
cmovb r12, r15
mov r15, r12
sub r15, r9
ja 0x1401042af
lea r11, [r9 - 1]
cmp r11, 0x2b
jae 0x140104452
lea r11, [0x140261610]
add ax, word [r11 + r9*2 - 2]
sub ax, word [rbx + r9*2 - 2]
jmp 0x140104307
lea rax, [0x140261610]
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 0x14010438e
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 0x140104375
lea rax, [0x1402616be]
movzx r9d, word [rax + r15*2]
mov r12, r8
movzx eax, r9w
cmp eax, 0x800
mov r8, rbp
jae 0x140103f2c
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 0x1401030f8
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 0x140103f58
lea r8, [0x14027fc20]
mov rcx, rsi
mov rdx, qword [rsp + 0x48]
call fcn.140235f20
lea r8, [0x14027fba0]
mov edx, 0x77c
mov rcx, 0xffffffffffffffff
call fcn.140235bf0
lea r8, [0x14027fc38]
mov rdx, r12
call fcn.140235f20
lea r8, [0x14027fba0]
mov edx, 0xce
mov rcx, 0xffffffffffffffff
call fcn.140235bf0
lea r8, [0x14027fba0]
mov edx, 0x65b
mov rcx, 0xffffffffffffffff
call fcn.140235bf0
lea r8, str.C:UsersMarko.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:UsersMarko.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, r10
call fcn.140235bf0
lea r8, [0x14027fba0]
mov edx, 0x3b
mov rcx, 0xffffffffffffffff
call fcn.140235bf0
lea r8, [0x14027fba0]
mov edx, 0x2b
mov rcx, 0xffffffffffffffff
call fcn.140235bf0
lea r8, str.C:UsersMarko.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcgb18030.rsC:UsersMarko.cargo_registry_srcindex.crates.io_6f17d22bba15001fencoding_rs_0.8.34_srcdata.rs
mov edx, 0x65
mov rcx, rax
call fcn.140235bf0
int3