Function at 0x140086e50
Capabilities:
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov r12, r9
mov rbx, r8
mov r15, rdx
mov r14, rcx
mov rdx, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0xf0]
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], 0
cmp byte [r15 + 6], 0
je 0x140086fa4
test rdx, rdx
je 0x140087906
movzx eax, byte [r15 + 7]
mov byte [r15 + 6], 0
mov word [rbp], ax
mov qword [rsp + 0x48], 1
mov eax, 1
movzx r11d, byte [r15 + 8]
test r11b, r11b
je 0x140086fb4
test r12, r12
je 0x140086f7b
lea rdi, [rax + 1]
cmp rdi, rdx
jae 0x14008794d
movzx ecx, byte [r15 + 9]
movzx r8d, cl
movzx r10d, byte [r15 + 0xa]
xor esi, esi
nop word cs:[rax + rax]
movzx r9d, byte [rbx + rsi]
cmp r11b, 1
je 0x140086f50
movzx r11d, r11b
cmp r11d, 2
jne 0x14008796b
mov byte [r15 + 8], 0
add r9b, 0x7f
cmp r9b, 0x7d
ja 0x1400879af
mov byte [r15 + 8], 3
mov byte [r15 + 9], cl
mov byte [r15 + 0xa], r10b
mov byte [r15 + 0xb], r9b
mov r11b, 3
inc rsi
cmp r12, rsi
jne 0x140086f00
jmp 0x140086f7b
mov byte [r15 + 8], 0
lea r10d, [r9 - 0x30]
cmp r10b, 9
ja 0x1400879c1
mov byte [r15 + 8], 2
mov byte [r15 + 9], cl
mov byte [r15 + 0xa], r10b
mov r11b, 2
inc rsi
cmp r12, rsi
jne 0x140086f00
cmp byte [rsp + 0x100], 0
je 0x14008795e
mov byte [r15 + 8], 0
mov byte [r14 + 8], 2
mov byte [r14 + 9], r11b
mov byte [r14 + 0xa], 0
mov qword [r14], r12
jmp 0x140087ce7
xor eax, eax
movzx r11d, byte [r15 + 8]
test r11b, r11b
jne 0x140086ed0
xor r11d, r11d
lea rcx, [rbx + 8]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x20], rbx
mov rcx, rdx
sub rcx, rax
jb 0x140088059
mov qword [rsp + 0x78], rdx
lea r15, [rbx + r11]
sub r12, r11
lea rdx, [rax*2]
add rdx, rbp
cmp rcx, r12
mov qword [rsp + 0x58], r12
mov rsi, r12
mov qword [rsp + 0x60], rcx
cmovb rsi, rcx
mov qword [rsp + 0x30], rdx
mov r8d, edx
sub r8d, r15d
sub r8d, r15d
test r8b, 6
jne 0x14008714a
mov r8d, r15d
neg r8d
and r8d, 7
lea rcx, [r8 + 0x10]
mov edi, 0
cmp rcx, rsi
ja 0x1400872a0
test r8, r8
je 0x140087151
movzx ecx, byte [r15]
test cl, cl
js 0x1400872dd
movzx ecx, cl
mov rdx, qword [rsp + 0x30]
mov word [rdx], cx
mov edi, 1
cmp r8d, 1
je 0x140087153
movzx ecx, byte [r15 + 1]
test cl, cl
js 0x1400872df
movzx ecx, cl
mov rdx, qword [rsp + 0x30]
mov word [rdx + 2], cx
mov edi, 2
cmp r8d, 2
je 0x140087153
movzx ecx, byte [r15 + 2]
test cl, cl
js 0x1400872df
movzx ecx, cl
mov rdx, qword [rsp + 0x30]
mov word [rdx + 4], cx
mov edi, 3
cmp r8d, 3
je 0x140087153
movzx ecx, byte [r15 + 3]
test cl, cl
js 0x1400872df
movzx ecx, cl
mov rdx, qword [rsp + 0x30]
mov word [rdx + 6], cx
mov edi, 4
cmp r8d, 4
je 0x140087153
movzx ecx, byte [r15 + 4]
test cl, cl
js 0x1400872df
movzx ecx, cl
mov rdx, qword [rsp + 0x30]
mov word [rdx + 8], cx
mov edi, 5
cmp r8d, 5
je 0x140087153
movzx ecx, byte [r15 + 5]
test cl, cl
js 0x1400872df
movzx ecx, cl
mov rdx, qword [rsp + 0x30]
mov word [rdx + 0xa], cx
mov edi, 6
cmp r8d, 6
je 0x140087153
movzx ecx, byte [r15 + 6]
test cl, cl
js 0x1400872df
movzx ecx, cl
mov rdx, qword [rsp + 0x30]
mov word [rdx + 0xc], cx
mov edi, 7
jmp 0x140087153
xor edi, edi
jmp 0x1400872a0
xor edi, edi
lea rcx, [rsi - 0x10]
mov qword [rsp + 0x80], rcx
lea rax, [rax*2 + 0x18]
add rax, rbp
mov rdx, qword [rsp + 0x50]
lea rbp, [rdx + r11]
nop word cs:[rax + rax]
mov r14, qword [rbp + rdi - 8]
mov rdx, qword [rbp + rdi]
mov rbx, rdx
or rbx, r14
movabs rcx, 0x8080808080808080
test rbx, rcx
jne 0x1400872a0
mov rbx, r14
shl rbx, 0x18
movabs rcx, 0xff000000000000
and rbx, rcx
mov r9, r14
shl r9, 0x10
movabs r12, 0xff00000000
and r9, r12
mov r13d, r14d
shl r13d, 8
and r13d, 0xff0000
or r13, rbx
movzx ebx, r14b
or rbx, r9
or rbx, r13
mov r9, r14
shr r9, 8
and r9, rcx
mov r10, r14
shr r10, 0x10
and r10, r12
or r10, r9
mov r9, r14
shr r9, 0x18
and r9d, 0xff0000
shr r14, 0x20
movzx r13d, r14b
or r13, r9
or r13, r10
mov r9, rdx
shl r9, 0x18
and r9, rcx
mov r10, rdx
shl r10, 0x10
and r10, r12
mov r8d, edx
shl r8d, 8
and r8d, 0xff0000
or r8, r9
movzx r14d, dl
or r14, r10
or r14, r8
mov r8, rdx
shr r8, 8
and r8, rcx
mov r9, rdx
shr r9, 0x10
and r9, r12
or r9, r8
mov r8, rdx
shr r8, 0x18
and r8d, 0xff0000
shr rdx, 0x20
movzx edx, dl
or rdx, r8
or rdx, r9
mov qword [rax + rdi*2 - 0x18], rbx
mov qword [rax + rdi*2 - 0x10], r13
mov qword [rax + rdi*2 - 8], r14
mov qword [rax + rdi*2], rdx
add rdi, 0x10
cmp rdi, qword [rsp + 0x80]
jbe 0x140087180
nop
cmp rdi, rsi
mov r14, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
jae 0x140087919
nop word cs:[rax + rax]
movzx ecx, byte [r15 + rdi]
test cl, cl
js 0x1400872e4
movzx eax, cl
mov word [rdx + rdi*2], ax
inc rdi
cmp rsi, rdi
jne 0x1400872c0
jmp 0x140087919
xor edi, edi
mov r14, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
lea r13, [0x1402d52f4]
add r11, rdi
mov rdx, qword [rsp + 0x48]
lea rax, [rdx + rdi]
add rdx, rdi
inc rdx
cmp rdx, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
mov r12, qword [rsp + 0x68]
jae 0x140087c2d
inc r11
lea rdi, [0x1402da420]
lea r9d, [rcx + 0x7f]
cmp r9b, 0x7d
ja 0x1400878cb
cmp r11, r12
jae 0x140087995
movzx r10d, byte [rbx + r11]
lea rsi, [r11 + 1]
lea r8d, [r10 - 0x30]
cmp r8b, 9
jbe 0x1400873a0
cmp r9b, 0x1f
lea rbp, [0x1402d3504]
jbe 0x140087440
lea r8d, [r10 + 0x5f]
cmp r8b, 0x5e
jae 0x140087533
lea r11d, [rcx + 0x50]
cmp r11b, 0x48
jae 0x140087682
movzx ecx, r11b
imul ecx, ecx, 0x5e
movzx edx, r8b
add edx, ecx
lea rcx, [0x1402d6e18]
movzx ecx, word [rcx + rdx*2]
jmp 0x1400877cb
cmp rsi, r12
jae 0x140087b19
movzx ecx, byte [rbx + r11 + 1]
add cl, 0x7f
cmp cl, 0x7d
ja 0x140087b33
lea rsi, [r11 + 2]
cmp rsi, r12
jae 0x140087b4d
movzx ebx, byte [rbx + r11 + 2]
add bl, 0xd0
cmp bl, 9
ja 0x140087b67
add r11, 3
movzx edx, r9b
imul rdx, rdx, 0x3138
movzx r8d, r8b
imul r8, r8, 0x4ec
add r8, rdx
movzx ecx, cl
lea rcx, [rcx + rcx*4]
lea rdx, [r8 + rcx*2]
movzx ecx, bl
add rcx, rdx
cmp rcx, 0x99fc
jae 0x1400874e0
cmp rcx, 0x1d21
mov rbx, qword [rsp + 0x20]
jne 0x140087602
mov rbp, qword [rsp + 0x38]
mov word [rbp + rax*2], 0xe7c7
jmp 0x140087757
lea ecx, [r10 - 0x40]
cmp cl, 0x3e
jbe 0x14008745a
cmp r10b, 0xfe
jg 0x140087c57
add r10b, 0xbf
mov ecx, r10d
movzx edx, r9b
imul edx, edx, 0xbe
movzx ecx, cl
add ecx, edx
mov r9d, 0x77c
xor r8d, r8d
mov r10d, 0x77c
nop dword [rax + rax]
shr r9, 1
add r9, r8
movzx r11d, word [rbp + r9*2]
cmp cx, r11w
je 0x1400875e7
lea rdx, [r9 + 1]
cmp cx, r11w
cmova r8, rdx
cmovb r10, r9
mov r9, r10
sub r9, r8
ja 0x140087480
lea rdx, [r8 - 1]
cmp rdx, 0x77c
jae 0x140087fb9
lea rdx, [0x1402d43fc]
add cx, word [rdx + r8*2 - 2]
sub cx, word [rbp + r8*2 - 2]
jmp 0x1400875f3
lea rdx, [rcx - 0x2e248]
cmp rdx, 0x100000
mov rbx, qword [rsp + 0x20]
jae 0x140087c37
add ecx, 0xfffe1db8
mov edx, ecx
shr edx, 0xa
add edx, 0xffffd7c0
mov rbp, qword [rsp + 0x38]
mov word [rbp + rax*2], dx
lea r8, [rax + 1]
mov qword [rsp + 0x48], r8
and ecx, 0x3ff
or ecx, 0xdc00
mov word [rbp + rax*2 + 2], cx
jmp 0x1400877db
lea r8d, [r10 - 0x40]
cmp r8b, 0x3e
jbe 0x14008754e
cmp r10b, 0xa0
jg 0x140087c57
add r10b, 0xbf
mov r8d, r10d
add cl, 0x5f
movzx ecx, cl
lea rcx, [rcx + rcx*2]
shl ecx, 5
movzx r9d, r8b
lea r8, [rcx + r9]
add r8, 0xfffffffffffffca0
cmp r8, 0x1f7b
jae 0x1400876b9
mov r9d, 0x65b
xor ecx, ecx
mov r10d, 0x65b
nop word cs:[rax + rax]
shr r9, 1
add r9, rcx
movzx r11d, word [r13 + r9*2]
cmp r11w, r8w
je 0x14008775c
lea rdx, [r9 + 1]
cmp r11w, r8w
cmova r10, r9
cmovb rcx, rdx
mov r9, r10
sub r9, rcx
ja 0x140087590
lea rdx, [rcx - 1]
cmp rdx, 0x65b
jae 0x140087fe9
lea rdx, [0x1402d5faa]
add r8w, word [rdx + rcx*2 - 2]
sub r8w, word [r13 + rcx*2 - 2]
jmp 0x140087768
lea rcx, [0x1402d43fc]
movzx ecx, word [rcx + r9*2]
mov rbp, qword [rsp + 0x38]
mov word [rbp + rax*2], cx
jmp 0x1400877d5
mov r9d, 0xce
xor r8d, r8d
mov r10d, 0xce
nop word cs:[rax + rax]
shr r9, 1
add r9, r8
lea rdx, [0x1402da4ce]
movzx esi, word [rdx + r9*2]
cmp si, cx
je 0x140087741
lea rdx, [r9 + 1]
cmp si, cx
cmova r10, r9
cmovb r8, rdx
mov r9, r10
sub r9, r8
ja 0x140087620
lea rdx, [r8 - 1]
cmp rdx, 0xce
jae 0x140087fd1
lea rdx, [0x1402da66a]
add cx, word [rdx + r8*2 - 2]
lea rdx, [0x1402da4ce]
sub cx, word [rdx + r8*2 - 2]
jmp 0x14008774d
cmp cl, 0xa8
je 0x1400877b2
movzx r11d, cl
cmp r11d, 0xa6
je 0x140087797
cmp r11d, 0xa1
jne 0x14008782c
movzx ecx, r8b
lea rdx, [0x1402da2f8]
jmp 0x1400877c7
add rcx, r9
cmp ecx, 0x360
jae 0x140087775
mov r9d, 0x3b
xor r8d, r8d
mov r10d, 0x3b
nop word [rax + rax]
shr r9, 1
add r9, r8
lea rdx, [0x1402d6c60]
movzx r11d, word [rdx + r9*2]
cmp r11w, cx
je 0x140087814
lea rdx, [r9 + 1]
cmp r11w, cx
cmova r10, r9
cmovb r8, rdx
mov r9, r10
sub r9, r8
ja 0x1400876e0
lea rdx, [r8 - 1]
cmp rdx, 0x3b
jae 0x140088015
lea rdx, [0x1402d6cd8]
add cx, word [rdx + r8*2 - 2]
lea rdx, [0x1402d6c60]
sub cx, word [rdx + r8*2 - 2]
jmp 0x140087820
lea rcx, [0x1402da66a]
movzx ecx, word [rcx + r9*2]
mov rbp, qword [rsp + 0x38]
mov word [rbp + rax*2], cx
mov r8, rax
jmp 0x1400877db
lea rcx, [0x1402d5faa]
movzx r8d, word [rcx + r9*2]
mov rbp, qword [rsp + 0x38]
mov word [rbp + rax*2], r8w
jmp 0x1400877d5
lea r10, [rcx - 0x22db]
cmp r10, 0x65
jae 0x140088001
lea rdx, [0x1402d6d4e]
movzx ecx, word [rdx + rcx*2 - 0x45b6]
jmp 0x1400877cb
add r10b, 0x20
cmp r10b, 0x15
ja 0x14008784c
movzx ecx, r10b
lea rdx, [0x1402da3b4]
jmp 0x1400877c7
cmp r8b, 0x20
jae 0x14008784c
movzx ecx, r8b
lea rdx, [0x1402da3e0]
movzx ecx, word [rdx + rcx*2]
mov rbp, qword [rsp + 0x38]
mov word [rbp + rax*2], cx
mov r8, rax
mov r11, rsi
lea rax, [r8 + 1]
mov qword [rsp + 0x48], rax
cmp r11, r12
jae 0x140087a6e
lea rcx, [r8 + 2]
mov rdx, qword [rsp + 0x40]
cmp rcx, rdx
jae 0x140087a0c
movzx ecx, byte [rbx + r11]
inc r11
test cl, cl
js 0x140087321
jmp 0x1400878e7
lea rcx, [0x1402d6cd8]
movzx ecx, word [rcx + r9*2]
mov rbp, qword [rsp + 0x38]
mov word [rbp + rax*2], cx
jmp 0x1400877d5
cmp r9b, 0x76
jbe 0x14008784c
add cl, 8
movzx ecx, cl
imul ecx, ecx, 0x5e
movzx edx, r8b
add ecx, edx
add ecx, 0xffffe234
jmp 0x1400875f3
add cl, 0x5e
movzx ecx, cl
imul edx, ecx, 0x5e
movzx ecx, r8b
add ecx, edx
mov r9d, 0x2b
xor r8d, r8d
mov r10d, 0x2b
nop word [rax + rax]
shr r9, 1
add r9, r8
movzx r11d, word [rdi + r9*2]
cmp cx, r11w
je 0x1400878bf
lea rdx, [r9 + 1]
cmp cx, r11w
cmova r8, rdx
cmovb r10, r9
mov r9, r10
sub r9, r8
ja 0x140087870
lea rdx, [r8 - 1]
cmp rdx, 0x2b
jae 0x14008802d
lea rdx, [0x1402da478]
add cx, word [rdx + r8*2 - 2]
sub cx, word [rdi + r8*2 - 2]
jmp 0x1400875f3
lea rcx, [0x1402da478]
jmp 0x1400875ee
cmp cl, 0x80
jne 0x1400879a3
mov rbp, qword [rsp + 0x38]
mov word [rbp + rax*2], 0x20ac
mov rdx, qword [rsp + 0x40]
jmp 0x1400878f0
movzx ecx, cl
mov word [rbp + r8*2 + 2], cx
inc rax
mov qword [rsp + 0x48], rax
cmp r11, r12
jbe 0x140086fd4
jmp 0x140087fa7
mov byte [r14 + 8], 1
mov qword [r14], 0
xor eax, eax
jmp 0x140087ce7
xor ecx, ecx
mov rax, qword [rsp + 0x58]
cmp qword [rsp + 0x60], rax
setb cl
add r11, rsi
add rsi, qword [rsp + 0x48]
mov rax, rsi
lea rdx, [rsp + 0x38]
and edx, 0xffff00
or rdx, rcx
mov qword [r14], r11
mov qword [r14 + 8], rdx
jmp 0x140087ce7
mov byte [r14 + 8], 1
mov qword [r14], 0
jmp 0x140087ce7
mov byte [r14 + 8], 0
mov qword [r14], r12
jmp 0x140087ce7
movzx ecx, byte [r15 + 0xb]
mov byte [r15 + 8], 0
add r9b, 0xd0
cmp r9b, 9
jbe 0x140087a19
add r10b, 0x30
mov byte [r15 + 6], 1
mov byte [r15 + 7], r10b
jmp 0x140087b70
cmp byte [rsp + 0x100], 0
je 0x140087a65
mov word [r14 + 8], 0x102
jmp 0x140087c3e
add r10b, 0x30
mov byte [r15 + 6], 1
mov byte [r15 + 7], r10b
jmp 0x140087b3c
lea r11, [rsi + 1]
cmp cl, 0x1f
jbe 0x140087a7b
lea r10d, [r9 + 0x5f]
cmp r10b, 0x5e
jae 0x140087bd1
lea r11d, [rcx - 0x2f]
cmp r11b, 0x48
jae 0x140087d02
movzx ecx, r11b
imul ecx, ecx, 0x5e
movzx edx, r10b
add edx, ecx
lea rcx, [0x1402d6e18]
movzx ecx, word [rcx + rdx*2]
mov word [rbp + rax*2], cx
jmp 0x140087f8a
mov byte [r14 + 8], 1
mov qword [r14], r11
jmp 0x140087ce7
movzx ecx, cl
imul rdx, r8, 0x3138
movzx r8d, r10b
imul r8, r8, 0x4ec
add r8, rdx
lea rcx, [rcx + rcx*4]
movzx edx, r9b
add rdx, r8
lea rcx, [rdx + rcx*2]
cmp rcx, 0x99fc
jae 0x140087b8a
cmp ecx, 0x1d21
jne 0x140087c71
mov word [rbp + rax*2], 0xe7c7
jmp 0x140087f8a
mov byte [r15 + 8], 1
mov byte [r15 + 9], r9b
mov byte [r14 + 8], 0
mov qword [r14], r11
jmp 0x140087ce7
lea ecx, [r9 - 0x40]
cmp cl, 0x3e
jbe 0x140087a95
cmp r9b, 0xfe
jg 0x140087be9
add r9b, 0xbf
mov ecx, r9d
mov r13, rbx
movzx edx, r8w
imul edx, edx, 0xbe
movzx ecx, cl
add ecx, edx
mov r10d, 0x77c
xor r8d, r8d
lea r9, [0x1402d3504]
mov r11d, 0x77c
shr r10, 1
add r10, r8
movzx ebx, word [r9 + r10*2]
cmp cx, bx
je 0x140087c4b
lea rdx, [r10 + 1]
cmp cx, bx
cmova r8, rdx
cmovb r11, r10
mov r10, r11
sub r10, r8
ja 0x140087abd
lea rdx, [r8 - 1]
cmp rdx, 0x77c
jae 0x140087fb9
mov rbx, r13
lea rdx, [0x1402d43fc]
add cx, word [rdx + r8*2 - 2]
sub cx, word [r9 + r8*2 - 2]
mov word [rbp + rax*2], cx
jmp 0x140087f8a
cmp byte [rsp + 0x100], 0
je 0x140087c03
mov word [r14 + 8], 0x202
jmp 0x140087cdf
mov byte [r15 + 6], 1
mov byte [r15 + 7], r10b
mov word [r14 + 8], 0x102
mov byte [r14 + 0xa], 1
jmp 0x140087ce4
cmp byte [rsp + 0x100], 0
je 0x140087c12
mov word [r14 + 8], 0x302
jmp 0x140087cdf
mov byte [r15 + 6], 1
mov byte [r15 + 7], r10b
mov byte [r15 + 8], 1
mov byte [r15 + 9], cl
mov word [r14 + 8], 0x102
mov byte [r14 + 0xa], 2
jmp 0x140087ce4
lea rdx, [rcx - 0x2e248]
cmp rdx, 0x100000
jae 0x140087cd5
add ecx, 0xfffe1db8
mov edx, ecx
shr edx, 0xa
add edx, 0xffffd7c0
mov word [rbp + rax*2], dx
and ecx, 0x3ff
or ecx, 0xdc00
mov word [rbp + rax*2 + 2], cx
or rax, 2
mov rdi, rax
jmp 0x140087f8a
lea r8d, [r9 - 0x40]
cmp r8b, 0x3e
jbe 0x140087d58
cmp r9b, 0xa0
jle 0x140087d51
mov byte [r14 + 8], 2
test r9b, r9b
js 0x140087d30
mov word [r14 + 9], 1
jmp 0x140087ce4
mov byte [r15 + 8], 2
mov byte [r15 + 9], r9b
mov byte [r15 + 0xa], r8b
jmp 0x140087c23
mov byte [r15 + 8], 3
mov byte [r15 + 9], r9b
mov byte [r15 + 0xa], r8b
mov byte [r15 + 0xb], cl
mov byte [r14 + 8], 0
jmp 0x140087ce4
mov ecx, 1
jmp 0x140087933
mov word [r14 + 8], 0x402
mov byte [r14 + 0xa], 0
mov qword [r14], r11
jmp 0x140087ce7
lea rcx, [0x1402d43fc]
jmp 0x140087f7d
mov byte [r14 + 8], 2
test r10b, r10b
js 0x140087d3c
mov word [r14 + 9], 1
mov qword [r14], r11
jmp 0x140087ce7
mov r13, rbx
mov r10d, 0xce
xor r8d, r8d
lea r9, [0x1402da4ce]
mov r11d, 0xce
shr r10, 1
add r10, r8
movzx ebx, word [r9 + r10*2]
cmp bx, cx
je 0x140087d45
lea rdx, [r10 + 1]
cmp bx, cx
cmova r11, r10
cmovb r8, rdx
mov r10, r11
sub r10, r8
ja 0x140087c8a
lea rdx, [r8 - 1]
cmp rdx, 0xce
jae 0x140087fd1
mov rbx, r13
lea rdx, [0x1402da66a]
jmp 0x140087e5b
inc rsi
mov word [r14 + 8], 0x402
mov byte [r14 + 0xa], 0
mov qword [r14], rsi
mov qword [r14 + 0x10], rax
mov rax, r14
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp r8d, 0x27
je 0x140087ebe
cmp r8d, 0x25
je 0x140087ea7
cmp r8d, 0x20
jne 0x140087edd
movzx ecx, r10b
lea rdx, [0x1402da2f8]
jmp 0x140087ecf
mov word [r14 + 9], 2
mov qword [r14], r11
jmp 0x140087ce7
mov word [r14 + 9], 2
jmp 0x140087ce4
lea rcx, [0x1402da66a]
jmp 0x140087f7d
add r9b, 0xbf
mov r8d, r9d
add cl, 0xe0
movzx ecx, cl
lea rcx, [rcx + rcx*2]
shl ecx, 5
movzx r9d, r8b
lea r8, [rcx + r9]
add r8, 0xfffffffffffffca0
cmp r8, 0x1f7b
jae 0x140087df4
mov r13, rbx
mov r10d, 0x65b
xor ecx, ecx
lea r9, [0x1402d52f4]
mov r11d, 0x65b
shr r10, 1
add r10, rcx
movzx ebx, word [r9 + r10*2]
cmp bx, r8w
je 0x140087e71
lea rdx, [r10 + 1]
cmp bx, r8w
cmova r11, r10
cmovb rcx, rdx
mov r10, r11
sub r10, rcx
ja 0x140087d95
lea rdx, [rcx - 1]
cmp rdx, 0x65b
jae 0x140087fe9
mov rbx, r13
lea rdx, [0x1402d5faa]
add r8w, word [rdx + rcx*2 - 2]
sub r8w, word [r9 + rcx*2 - 2]
mov word [rbp + rax*2], r8w
jmp 0x140087f8a
add rcx, r9
cmp ecx, 0x360
jae 0x140087e7d
mov r13, rbx
mov r10d, 0x3b
xor r8d, r8d
lea r9, [0x1402d6c60]
mov r11d, 0x3b
shr r10, 1
add r10, r8
movzx ebx, word [r9 + r10*2]
cmp bx, cx
je 0x140087f76
lea rdx, [r10 + 1]
cmp bx, cx
cmova r11, r10
cmovb r8, rdx
mov r10, r11
sub r10, r8
ja 0x140087e18
lea rdx, [r8 - 1]
cmp rdx, 0x3b
jae 0x140088015
mov rbx, r13
lea rdx, [0x1402d6cd8]
add cx, word [rdx + r8*2 - 2]
sub cx, word [r9 + r8*2 - 2]
mov word [rbp + rax*2], cx
jmp 0x140087f8a
lea rcx, [0x1402d5faa]
jmp 0x140087f7d
lea r11, [rcx - 0x22db]
cmp r11, 0x65
jae 0x140088045
lea rdx, [0x1402d6d4e]
movzx ecx, word [rdx + rcx*2 - 0x45b6]
mov word [rbp + rax*2], cx
jmp 0x140087f8a
add r9b, 0x20
cmp r9b, 0x15
ja 0x140087f01
movzx ecx, r9b
lea rdx, [0x1402da3b4]
jmp 0x140087ecf
cmp r10b, 0x20
jae 0x140087f01
movzx ecx, r10b
lea rdx, [0x1402da3e0]
movzx ecx, word [rdx + rcx*2]
mov word [rbp + rax*2], cx
jmp 0x140087f8a
cmp cl, 0x76
jbe 0x140087f01
add cl, 0x89
movzx ecx, cl
imul ecx, ecx, 0x5e
movzx edx, r10b
add ecx, edx
add ecx, 0xffffe234
mov word [rbp + rax*2], cx
jmp 0x140087f8a
mov r13, rbx
add cl, 0xdf
movzx ecx, cl
imul edx, ecx, 0x5e
movzx ecx, r10b
add ecx, edx
mov r10d, 0x2b
xor r8d, r8d
lea r9, [0x1402da420]
mov r11d, 0x2b
shr r10, 1
add r10, r8
movzx ebx, word [r9 + r10*2]
cmp cx, bx
je 0x140087f6d
lea rdx, [r10 + 1]
cmp cx, bx
cmova r8, rdx
cmovb r11, r10
mov r10, r11
sub r10, r8
ja 0x140087f29
lea rdx, [r8 - 1]
cmp rdx, 0x2b
jae 0x14008802d
mov rbx, r13
lea rdx, [0x1402da478]
jmp 0x140087b03
lea rcx, [0x1402da478]
jmp 0x140087f7d
lea rcx, [0x1402d6cd8]
movzx ecx, word [rcx + r10*2]
mov word [rbp + rax*2], cx
mov rbx, r13
mov qword [rsp + 0x48], rdi
lea r11, [rsi + 1]
mov rax, rdi
cmp rsi, r12
mov rdx, qword [rsp + 0xf8]
jb 0x140086fb7
lea r8, [0x1402db5b8]
mov rcx, r11
mov rdx, r12
call fcn.1401b2670
lea r8, [0x1402db538]
mov edx, 0x77c
mov rcx, 0xffffffffffffffff
call fcn.1401ac3e0
lea r8, [0x1402db538]
mov edx, 0xce
mov rcx, 0xffffffffffffffff
call fcn.1401ac3e0
lea r8, [0x1402db538]
mov edx, 0x65b
mov rcx, 0xffffffffffffffff
call fcn.1401ac3e0
lea r8, str._home_zuzu_.cargo_registry_src_index.crates.io_6f17d22bba15001f_encoding_rs_0.8.34_src_gb18030.rs_home_zuzu_.cargo_registry_src_index.crates.io_6f17d22bba15001f_encoding_rs_0.8.34_src_data.rs
mov edx, 0x65
mov rcx, r10
call fcn.1401ac3e0
lea r8, [0x1402db538]
mov edx, 0x3b
mov rcx, 0xffffffffffffffff
call fcn.1401ac3e0
lea r8, [0x1402db538]
mov edx, 0x2b
mov rcx, 0xffffffffffffffff
call fcn.1401ac3e0
lea r8, str._home_zuzu_.cargo_registry_src_index.crates.io_6f17d22bba15001f_encoding_rs_0.8.34_src_gb18030.rs_home_zuzu_.cargo_registry_src_index.crates.io_6f17d22bba15001f_encoding_rs_0.8.34_src_data.rs
mov edx, 0x65
mov rcx, r11
call fcn.1401ac3e0
lea r8, [0x1402db5d0]
mov rcx, rax
call fcn.1401b2670
int3