Function at 0x140038620
Capabilities:
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
movaps xmmword [rsp + 0x90], xmm6
movaps xmmword [rsp + 0xa0], xmm7
mov rax, qword [rcx + 0x230]
mov rdx, qword [rax + 0x10]
mov rdi, rcx
lea rcx, [rax + 0x10]
test rdx, rdx
je 0x140038671
cmp word [rdx + 0x28], 0
js 0x140038671
call sym.hb_pp_tokenListFree.part.7
mov rax, qword [rdi + 0x230]
lea rcx, [rax + 0x10]
movabs rbx, 0x100000000
pxor xmm0, xmm0
xor r13d, r13d
xor r14d, r14d
mov qword [rdi + 0x138], rcx
movdqa xmm7, xmmword [0x1400b95f0]
mov dword [rax + 0x24], 0
mov qword [rdi + 0x1f0], rbx
movups xmmword [rdi + 0x21c], xmm0
mov r15d, dword [rax + 0x18]
mov qword [rdi + 0x1e0], 0
lea eax, [r15 + 1]
mov word [rdi + 0x1e8], r13w
mov qword [rdi + 0x1d0], 0
mov dword [rdi + 0x1ec], 0
mov dword [rsp + 0x4c], eax
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x58], 0
nop
mov rax, qword [rdi + 0x1c8]
mov rcx, rdi
mov qword [rax + 8], 0
call sym.hb_pp_readLine
mov rax, qword [rdi + 0x1c8]
mov r12d, dword [rdi + 0x1ec]
mov rsi, qword [rax]
mov rbx, qword [rax + 8]
test r12d, r12d
je 0x140039540
mov rax, qword [rdi + 0x1d8]
mov qword [rdi + 0x1e0], 1
mov dword [rdi + 0x1ec], 0
mov qword [rdi + 0x1d0], rax
cmp rbx, 1
jbe 0x1400393a0
movzx eax, byte [rsi]
cmp al, 0x20
je 0x140039e63
cmp al, 9
je 0x140039e63
mov qword [rsp + 0x68], 0
xor r13d, r13d
mov eax, dword [rdi + 0x210]
movzx r12d, byte [rsi]
mov r10d, eax
test eax, eax
je 0x1400388a0
cmp eax, 1
je 0x140038cb0
cmp eax, 6
je 0x1400392d0
cmp eax, 2
je 0x1400393c0
lea rax, str.ENDTEXT
lea rbp, [rsp + 0x68]
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, rbp
call sym.hb_pp_hasCommand
test eax, eax
je 0x1400395d0
cmp dword [rdi + 0x210], 3
jne 0x140039024
mov rbp, qword [rdi + 0x200]
test rbp, rbp
jne 0x140038825
jmp 0x140039111
mov rax, qword [rdi + 0x138]
mov qword [r12], 0
mov qword [r13], r12
mov rax, qword [rax]
mov qword [rdi + 0x138], rax
mov rax, qword [rdi + 0x230]
add dword [rax + 0x24], 1
mov rbp, qword [rbp]
test rbp, rbp
je 0x140039864
cmp byte [rbp + 0x28], 0xc
je 0x140038818
mov ecx, 0x30
mov r13, qword [rdi + 0x138]
call sym.hb_xgrab
movdqu xmm1, xmmword [rbp]
mov r12, rax
movups xmmword [rax], xmm1
movdqu xmm2, xmmword [rbp + 0x10]
movups xmmword [rax + 0x10], xmm2
movdqu xmm3, xmmword [rbp + 0x20]
movups xmmword [rax + 0x20], xmm3
test byte [rax + 0x29], 0x40
jne 0x1400387f0
mov r15, qword [rax + 0x18]
mov rdx, qword [rbp + 0x10]
lea rcx, [r15 + 1]
mov qword [rsp + 0x50], rdx
call sym.hb_xgrab
mov rdx, qword [rsp + 0x50]
mov r8, r15
mov rcx, rax
call sym.memcpy
mov rdx, qword [r12 + 0x18]
mov qword [r12 + 0x10], rax
mov byte [rax + rdx], 0
jmp 0x1400387f0
mov eax, r12d
and eax, 0xffffffdf
cmp rbx, 1
seta r11b
cmp al, 0x45
jne 0x1400388bb
test r11b, r11b
jne 0x140039010
cmp r12b, 0x22
je 0x140038d00
cmp al, 0x54
jne 0x14003948c
cmp rbx, 1
jbe 0x1400388de
cmp byte [rsi + 1], 0x22
mov ecx, 1
je 0x14003895a
mov ebp, r13d
lea eax, [r12 - 0x22]
and ebp, 1
cmp al, 0x3e
jbe 0x1400389d0
xor eax, eax
cmp r12b, 0x2a
je 0x140039470
cmp r12b, 0x20
je 0x14003890d
cmp r12b, 9
jne 0x140039730
mov rax, qword [rsp + 0x68]
jmp 0x140038937
cmp dl, 9
jne 0x140039b40
add qword [rdi + 0x1d0], 4
add rax, 1
mov qword [rsp + 0x68], rax
cmp rax, rbx
jae 0x140038c77
movzx edx, byte [rsi + rax]
lea rcx, [rsi + rax]
cmp dl, 0x20
jne 0x140038914
add qword [rdi + 0x1d0], 1
jmp 0x140038925
cmp byte [rsi + rcx + 1], 0x22
je 0x140038968
mov rcx, rax
lea rax, [rcx + 1]
mov qword [rsp + 0x68], rax
cmp rax, rbx
jne 0x140038950
lea r8, [rcx - 1]
lea rdx, [rsi + 2]
mov r9d, 0x2c
mov rcx, rdi
call sym.hb_pp_tokenAddNext
mov rax, qword [rsp + 0x68]
mov ebp, r13d
and ebp, 1
cmp rax, rbx
jne 0x140038c70
mov rcx, qword [rdi + 0x1c8]
xor edx, edx
sub rsi, qword [rcx]
call sym.hb_membufAddCh
mov rax, qword [rdi + 0x1c8]
add rsi, 1
mov rcx, rdi
mov edx, 2
add rsi, qword [rax]
mov r8, rsi
call sym.hb_pp_error.constprop.31
mov rax, qword [rsp + 0x68]
jmp 0x140038c74
movabs rdx, 0x4000000000000021
bt rdx, rax
jb 0x140038ffc
cmp r12b, 0x5b
jne 0x140039267
mov edx, dword [rdi + 0x1f0]
test edx, edx
jne 0x140038a4f
mov eax, dword [rdi + 0x1ec]
mov ecx, 1
test eax, eax
jne 0x140038a2c
movzx edx, byte [rdi + 0x1e8]
cmp dx, 0x37
ja 0x140038a2c
movabs rax, 0xa83e0000e00000
mov ecx, edx
shr rax, cl
mov rcx, rax
not rcx
and ecx, 1
lea rax, [rsp + 0x68]
mov r9d, 1
mov r8, rbx
mov rdx, rsi
mov qword [rsp + 0x20], rax
call sym.hb_pp_canQuote
test eax, eax
jne 0x140038c50
xor eax, eax
mov edx, r11d
mov ecx, r12d
and ecx, 0xffffffdf
sub ecx, 0x41
cmp cl, 0x19
jbe 0x140039905
cmp r12b, 0x5f
je 0x140039905
test r12b, r12b
js 0x140039ea4
lea ecx, [r12 - 0x20]
cmp cl, 0x5e
ja 0x140039e15
lea ecx, [r12 - 0x30]
cmp cl, 9
ja 0x140039d03
cmp rbx, 2
jbe 0x140038aa4
cmp byte [rsi], 0x30
je 0x14003a22a
mov rdx, qword [rsp + 0x68]
jmp 0x140038abf
movzx eax, byte [rsi + rdx + 1]
sub eax, 0x30
cmp al, 9
ja 0x140038acd
mov rdx, r8
lea r8, [rdx + 1]
mov qword [rsp + 0x68], r8
cmp r8, rbx
jb 0x140038ab0
mov rax, rbx
sub rax, r8
cmp rax, 1
jbe 0x140038ae4
cmp byte [rsi + r8], 0x2e
je 0x14003a30c
mov r9d, 0x2a
mov rdx, rsi
mov rcx, rdi
call sym.hb_pp_tokenAddNext
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x68], 0
cmp rbx, rax
setne dl
add rsi, rax
sub rbx, rax
or ebp, edx
test bpl, bpl
jne 0x140038771
nop word [rax + rax]
test r14, r14
je 0x140038c9d
cmp qword [rdi + 0x138], r14
jne 0x140039661
mov eax, dword [rdi + 0x224]
mov rdx, qword [rdi + 0x230]
test eax, eax
je 0x140038b70
mov r15d, dword [rdx + 0x24]
test r15d, r15d
je 0x140038b70
cmp qword [rdx + 0x38], 0
je 0x14003a0a5
cmp qword [rdx + 0x40], 0
je 0x140039668
nop word cs:[rax + rax]
mov eax, dword [rdi + 0x1ec]
test eax, eax
jne 0x140038b91
mov ecx, dword [rdi + 0x210]
test ecx, ecx
je 0x1400398a0
cmp ecx, 3
je 0x1400398a0
mov rcx, qword [rdx + 0x38]
mov r8, rdx
test rcx, rcx
je 0x140039710
cmp qword [rdx + 0x40], 0
je 0x14003971d
test eax, eax
jne 0x1400386f0
mov ebp, dword [rdi + 0x224]
test ebp, ebp
jne 0x1400386f0
mov eax, dword [rdi + 0x210]
test eax, eax
je 0x140038bd5
cmp eax, 3
jne 0x1400386f0
test eax, eax
je 0x140038c17
cmp eax, 1
je 0x14003a4a1
cmp eax, 2
je 0x14003a479
test rcx, rcx
je 0x14003a462
cmp qword [rdx + 0x40], 0
sete al
test al, al
je 0x140038c17
xor r8d, r8d
mov edx, 3
mov rcx, rdi
call sym.hb_pp_error.constprop.31
mov r8, qword [rdi + 0x230]
mov r11d, dword [r8 + 0x24]
test r11d, r11d
jne 0x14003a27f
mov eax, dword [rsp + 0x48]
sub dword [r8 + 0x18], eax
movaps xmm6, xmmword [rsp + 0x90]
movaps xmm7, xmmword [rsp + 0xa0]
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x68]
lea rdx, [rsi + 1]
mov r9d, 0x29
mov rcx, rdi
lea r8, [rax - 1]
call sym.hb_pp_tokenAddNext
mov rax, qword [rsp + 0x68]
add rax, 1
cmp rax, rbx
setne dl
add rsi, rax
sub rbx, rax
or ebp, edx
mov qword [rsp + 0x68], 0
test bpl, bpl
jne 0x140038771
test r14, r14
jne 0x140038b29
mov rdx, qword [rdi + 0x230]
jmp 0x140038b70
test rbx, rbx
je 0x140039383
mov qword [rsp + 0x68], 1
cmp rbx, 1
jbe 0x1400396f0
cmp r12b, 0x2a
jne 0x1400396f0
cmp byte [rsi + 1], 0x2f
je 0x140039b53
sub rbx, 1
add rsi, 1
mov qword [rsp + 0x68], 0
xor r13d, r13d
jmp 0x140038777
mov r9d, dword [rdi + 0x1a4]
mov ebp, r13d
mov rax, qword [rsp + 0x68]
and ebp, 1
test r9d, r9d
jne 0x140038e6a
mov r8, qword [rsp + 0x68]
jmp 0x140038d30
cmp byte [rsi + r8 + 1], r12b
je 0x140039433
mov r8, rax
lea rax, [r8 + 1]
mov qword [rsp + 0x68], rax
cmp rax, rbx
jb 0x140038d22
mov ecx, dword [rdi + 0x1a8]
test ecx, ecx
je 0x140038e24
cmp rax, rbx
jne 0x140038e20
cmp rbx, 1
jbe 0x140039a9c
movzx r8d, byte [rsi + rbx - 1]
lea rdx, [rbx - 1]
mov r9d, 1
cmp r8b, 0x20
jne 0x140038dae
lea rdx, [rbx - 2]
jmp 0x140038d93
lea rcx, [rdx - 1]
movzx r8d, byte [rsi + rcx + 1]
cmp r8b, 0x20
jne 0x140038dae
mov rdx, rcx
mov r9, rbx
sub r9, rdx
test rdx, rdx
jne 0x140038d80
cmp rbx, r9
jb 0x140038e20
mov rdx, rbx
sub rdx, r9
movzx r8d, byte [rsi + rdx]
cmp r8b, 0x3b
jne 0x140038e20
mov rax, qword [rdi + 0x1c8]
mov qword [rsp + 0x68], rdx
mov r15, qword [rax + 8]
mov rsi, r15
sub rsi, r9
cmp rsi, r15
jae 0x140038dd3
mov qword [rax + 8], rsi
mov rcx, rdi
call sym.hb_pp_readLine
mov rdx, qword [rdi + 0x1c8]
mov rax, qword [rdx + 8]
sub rax, r15
add rbx, rax
mov rax, qword [rsp + 0x68]
sub rsi, rax
add rsi, qword [rdx]
jmp 0x140038e0e
lea rdx, [rax + 1]
cmp byte [rsi + rdx - 1], r12b
je 0x140038e20
mov rax, rdx
mov qword [rsp + 0x68], rax
cmp rax, rbx
jb 0x140038e00
je 0x140038d55
nop
lea r8, [rax - 1]
lea rdx, [rsi + 1]
mov r9d, 0x29
mov rcx, rdi
call sym.hb_pp_tokenAddNext
mov rax, qword [rsp + 0x68]
cmp rax, rbx
jne 0x140038c70
jmp 0x140038992
movzx edx, byte [rsi + rax + 1]
cmp dl, 0x22
je 0x140038f90
cmp dl, 0x5c
je 0x140039873
mov rax, rbp
lea rbp, [rax + 1]
mov qword [rsp + 0x68], rbp
cmp rbp, rbx
jb 0x140038e50
mov r8d, dword [rdi + 0x1a8]
test r8d, r8d
je 0x140038f90
cmp rbp, rbx
jne 0x140038f90
mov r9, rbp
mov rbp, rbx
cmp rbp, 1
jbe 0x140038f74
movzx ecx, byte [rsi + rbp - 1]
lea rax, [rbp - 1]
mov r8d, 1
cmp cl, 0x20
jne 0x140038eef
lea rax, [rbp - 2]
jmp 0x140038ed1
lea rdx, [rax - 1]
movzx ecx, byte [rsi + rdx + 1]
cmp cl, 0x20
jne 0x140038eef
mov rax, rdx
mov r8, rbp
sub r8, rax
test rax, rax
jne 0x140038ec0
cmp rbp, r8
jb 0x140038f83
mov rax, rbp
sub rax, r8
movzx ecx, byte [rsi + rax]
cmp cl, 0x3b
jne 0x140038f83
mov qword [rsp + 0x68], rax
mov rax, qword [rdi + 0x1c8]
mov r15, qword [rax + 8]
mov rsi, r15
sub rsi, r8
cmp rsi, r15
jae 0x140038f17
mov qword [rax + 8], rsi
mov rcx, rdi
call sym.hb_pp_readLine
mov rdx, qword [rdi + 0x1c8]
mov rax, qword [rsp + 0x68]
mov rbx, qword [rdx + 8]
sub rsi, rax
sub rax, 1
add rsi, qword [rdx]
add rbx, rbp
sub rbx, r15
jmp 0x140038f57
movzx edx, byte [rsi + rax + 1]
cmp dl, 0x22
je 0x140038f90
cmp dl, 0x5c
je 0x140039450
mov rax, rbp
lea rbp, [rax + 1]
mov qword [rsp + 0x68], rbp
cmp rbp, rbx
jb 0x140038f41
jne 0x140038f90
mov r9, rbp
cmp rbp, 1
ja 0x140038ea1
mov r8d, 1
cmp rbp, r8
jae 0x140038ee5
mov rbx, rbp
mov rbp, r9
nop dword [rax]
cmp r12b, 0x22
lea rdx, [rsp + 0x70]
setne r12b
movzx r12d, r12b
lea rax, [r12 + 1]
sub rbp, rax
mov qword [rsp + 0x70], rbp
lea rbp, [rsi + rax]
mov rcx, rbp
call sym.hb_strRemEscSeq
mov r8, qword [rsp + 0x70]
mov rdx, rbp
mov rcx, rdi
mov r9d, 0x29
call sym.hb_pp_tokenAddNext
mov rdx, qword [rsp + 0x68]
lea rax, [rdx + 1]
cmp rdx, rbx
je 0x140039c32
cmp rbx, rax
mov edx, r13d
setne bpl
and edx, 1
add rsi, rax
sub rbx, rax
or ebp, edx
jmp 0x140038c82
cmp r12b, 0x60
mov eax, 0x27
cmove r12d, eax
jmp 0x140038d1b
cmp byte [rsi + 1], 0x22
jne 0x1400388de
mov eax, 1
jmp 0x140038e6a
mov rax, qword [rdi + 0x208]
mov rdx, qword [rdi + 0x1f8]
mov rcx, rdi
mov r9, qword [rax + 8]
mov r8, qword [rax]
call sym.hb_pp_tokenAddStreamFunc
mov rdx, qword [rdi + 0x200]
test rdx, rdx
je 0x140039102
cmp qword [rdi + 0x1f8], 0
je 0x1400390ec
mov ecx, 0x30
mov rbp, qword [rdi + 0x1d8]
call sym.hb_xgrab
mov rdx, qword [rdi + 0x138]
lea rcx, [0x1400b8488]
pxor xmm0, xmm0
mov qword [rax + 0x20], rbp
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], 1
mov dword [rax + 0x28], 0x401e
movups xmmword [rax], xmm0
mov qword [rdx], rax
mov qword [rdi + 0x138], rax
mov rax, qword [rdi + 0x230]
add dword [rax + 0x24], 1
mov eax, dword [rdi + 0x228]
mov dword [rdi + 0x1f4], 1
mov dword [rdi + 0x1ec], 0
test eax, eax
je 0x1400390e5
cmp eax, 5
jne 0x1400390db
add dword [rdi + 0x224], 1
mov dword [rdi + 0x228], 0
mov rdx, qword [rdi + 0x200]
mov rax, qword [rdi + 0x208]
mov rcx, rdi
mov r9, qword [rax + 8]
mov r8, qword [rax]
call sym.hb_pp_tokenAddStreamFunc
mov rax, qword [rdi + 0x208]
mov qword [rax + 8], 0
mov rbp, qword [rdi + 0x1f8]
test rbp, rbp
je 0x1400391b0
movzx eax, word [rbp + 0x28]
test ax, ax
js 0x1400391b0
mov rdx, qword [rbp]
mov qword [rdi + 0x1f8], rdx
test ah, 0x40
je 0x140039197
nop
mov edx, eax
and dx, 0xfb
cmp dx, 3
je 0x140039151
cmp al, 0x12
jne 0x14003916f
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x14003916f
mov rax, qword [rcx]
mov qword [rbp + 8], rax
call sym.hb_pp_tokenFree
mov rcx, qword [rbp + 8]
test rcx, rcx
jne 0x14003915a
mov rcx, rbp
call sym.hb_xfree
mov rbp, qword [rdi + 0x1f8]
test rbp, rbp
je 0x1400391b0
movzx eax, word [rbp + 0x28]
mov rdx, qword [rbp]
mov qword [rdi + 0x1f8], rdx
test ah, 0x40
jne 0x140039140
mov rcx, qword [rbp + 0x10]
call sym.hb_xfree
movzx eax, word [rbp + 0x28]
jmp 0x140039140
mov rbp, qword [rdi + 0x200]
test rbp, rbp
je 0x140039243
movzx eax, word [rbp + 0x28]
test ax, ax
js 0x140039243
mov rdx, qword [rbp]
mov qword [rdi + 0x200], rdx
test ah, 0x40
je 0x140039234
nop dword [rax]
cmp al, 0x12
je 0x1400391ee
and ax, 0xfb
cmp ax, 3
jne 0x14003920c
mov rcx, qword [rbp + 8]
test rcx, rcx
je 0x14003920c
mov rax, qword [rcx]
mov qword [rbp + 8], rax
call sym.hb_pp_tokenFree
mov rcx, qword [rbp + 8]
test rcx, rcx
jne 0x1400391f7
mov rcx, rbp
call sym.hb_xfree
mov rbp, qword [rdi + 0x200]
test rbp, rbp
je 0x140039243
movzx eax, word [rbp + 0x28]
mov rdx, qword [rbp]
mov qword [rdi + 0x200], rdx
test ah, 0x40
jne 0x1400391e0
mov rcx, qword [rbp + 0x10]
call sym.hb_xfree
movzx eax, word [rbp + 0x28]
jmp 0x1400391e0
mov dword [rdi + 0x210], 0
mov rax, qword [rsp + 0x68]
cmp rbx, rax
setne bpl
add rsi, rax
sub rbx, rax
xor r13d, r13d
jmp 0x140038c82
cmp r12b, 0x26
sete al
cmp r12b, 0x2f
sete dl
or dl, al
je 0x1400388f1
cmp rbx, 1
jbe 0x1400388f3
movzx ecx, byte [rsi + 1]
cmp cl, r12b
je 0x140039482
cmp r12b, 0x2a
je 0x140039470
cmp r12b, 0x2f
jne 0x1400388fd
xor eax, eax
cmp cl, 0x2a
jne 0x140038a54
mov dword [rdi + 0x210], 1
mov rax, qword [rsp + 0x68]
add rax, 2
jmp 0x140038c74
test rbx, rbx
je 0x140039570
mov qword [rsp + 0x68], 1
mov eax, dword [rdi + 0x21c]
cmp eax, 5
je 0x140039bfb
cmp eax, 6
je 0x140039bcd
cmp eax, 4
je 0x140039b8b
cmp r12b, 0x27
je 0x140039ed3
cmp r12b, 0x22
je 0x14003a0b7
cmp r12b, 0x7b
je 0x14003a1f5
cmp r12b, 0x7d
je 0x14003a0cc
mov r8d, 1
cmp rbx, 1
jbe 0x14003a46f
cmp r12b, 0x2f
je 0x14003a440
mov rcx, qword [rdi + 0x208]
mov rdx, rsi
call sym.hb_membufAddData
mov rax, qword [rsp + 0x68]
cmp rbx, rax
je 0x140039580
mov r11d, dword [rdi + 0x210]
test r11d, r11d
je 0x140039580
sub rbx, rax
add rsi, rax
mov eax, dword [rdi + 0x210]
jmp 0x140038ce8
mov rax, qword [rsp + 0x68]
mov rbx, rax
neg rbx
setne bpl
add rsi, rax
xor r13d, r13d
jmp 0x140038c82
mov qword [rsp + 0x68], 0
test rbx, rbx
je 0x140038b20
xor r13d, r13d
jmp 0x140038771
lea rax, str.enddump
mov r9d, 3
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x30], rax
lea rax, str.pragma
lea r8, [rsp + 0x68]
mov qword [rsp + 0x28], rax
lea rax, str._01
mov qword [rsp + 0x20], rax
call sym.hb_pp_hasCommand
mov r13d, eax
test eax, eax
je 0x140039a5d
mov r13d, dword [rdi + 0x1b4]
mov dword [rdi + 0x210], 0
test r13d, r13d
je 0x140039a50
mov rax, qword [rdi + 0x140]
mov qword [rax + 8], 0
jmp 0x14003924d
mov ecx, dword [rdi + 0x1a8]
test ecx, ecx
je 0x140038e24
jmp 0x140038e20
add rax, 2
mov qword [rsp + 0x68], rax
cmp rax, rbx
jne 0x140038f57
mov rbp, rax
jmp 0x140038f67
mov rdx, qword [rdi + 0x230]
mov edx, dword [rdx + 0x24]
test edx, edx
jne 0x140038a51
add rsi, rbx
xor ebx, ebx
jmp 0x140038c82
cmp al, 0x44
jne 0x1400388de
test r11b, r11b
je 0x1400388de
cmp byte [rsi + 1], 0x22
mov ecx, 1
jne 0x1400388de
lea rax, [rcx + 1]
mov qword [rsp + 0x68], rax
cmp rax, rbx
jae 0x1400394d8
nop word [rax + rax]
cmp byte [rsi + rcx + 1], 0x22
je 0x1400394d8
mov rcx, rax
lea rax, [rcx + 1]
mov qword [rsp + 0x68], rax
cmp rax, rbx
jb 0x1400394c0
lea r8, [rcx - 1]
lea rdx, [rsi + 2]
mov r9d, 0x2b
mov rcx, rdi
call sym.hb_pp_tokenAddNext
mov rax, qword [rsp + 0x68]
mov ebp, r13d
and ebp, 1
cmp rax, rbx
jne 0x140038c70
mov rcx, qword [rdi + 0x1c8]
xor edx, edx
sub rsi, qword [rcx]
call sym.hb_membufAddCh
mov rax, qword [rdi + 0x1c8]
add rsi, 1
mov rcx, rdi
mov edx, 2
add rsi, qword [rax]
mov r8, rsi
call sym.hb_pp_error.constprop.31
jmp 0x140038af5
mov ebp, dword [rdi + 0x210]
test ebp, ebp
je 0x1400393a0
test rbx, rbx
jne 0x1400393a0
mov byte [rsi], 0
mov r13d, 1
mov qword [rsp + 0x68], 0
jmp 0x140038771
mov r8, qword [rsp + 0x68]
test r8, r8
jne 0x140039345
xor ebx, ebx
mov rbp, qword [rdi + 0x208]
mov rdx, qword [rbp + 8]
mov rax, qword [rbp]
cmp rdx, qword [rbp + 0x10]
je 0x140039c16
lea rcx, [rdx + 1]
mov qword [rbp + 8], rcx
mov byte [rax + rdx], 0xa
mov r13d, dword [rdi + 0x210]
test r13d, r13d
je 0x140039779
mov rax, qword [rsp + 0x68]
cmp rax, rbx
setne bpl
add rsi, rax
sub rbx, rax
xor r13d, r13d
jmp 0x140038c82
lea rax, str.__endtext
mov r8, rbp
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x30], rax
lea rax, str.pragma
mov r9d, 3
mov qword [rsp + 0x28], rax
lea rax, str._01
mov qword [rsp + 0x20], rax
call sym.hb_pp_hasCommand
mov r13d, eax
test eax, eax
jne 0x1400387ce
mov eax, dword [rdi + 0x210]
mov qword [rsp + 0x68], rbx
cmp eax, 3
je 0x140039fb3
cmp eax, 5
je 0x14003a090
mov rcx, qword [rdi + 0x208]
mov r8, rbx
mov rdx, rsi
call sym.hb_membufAddData
mov rcx, qword [rdi + 0x208]
mov edx, 0xa
call sym.hb_membufAddCh
mov qword [rsp + 0x68], 0
jmp 0x140038b20
mov rdx, qword [rdi + 0x230]
mov r13d, dword [rsp + 0x4c]
mov rsi, qword [r14]
mov ebp, r13d
cmp r13d, dword [rdx + 0x18]
jge 0x140039f09
mov r12d, dword [rsp + 0x48]
lea rbx, [0x1400b8533]
pxor xmm6, xmm6
nop dword [rax]
mov ecx, 0x30
add ebp, 1
call sym.hb_xgrab
mov rdx, qword [rdi + 0x230]
lea ecx, [r12 + rbp]
mov qword [rax + 0x10], rbx
sub ecx, r13d
movups xmmword [rax + 0x18], xmm7
mov dword [rax + 0x28], 0x401f
movups xmmword [rax], xmm6
mov qword [r14], rax
mov r14, rax
add dword [rdx + 0x24], 1
cmp dword [rdx + 0x18], ebp
jg 0x140039690
test rsi, rsi
je 0x140039c68
mov qword [rax], rsi
mov r14, rax
mov dword [rsp + 0x4c], ebp
mov dword [rsp + 0x48], ecx
jmp 0x140038b70
cmp rbx, 1
setne bpl
add rsi, 1
sub rbx, 1
xor r13d, r13d
jmp 0x140038c82
mov r12d, dword [rdx + 0x2c]
test r12d, r12d
je 0x140038bac
mov eax, dword [rdi + 0x210]
test eax, eax
je 0x140038c17
jmp 0x140038bd9
cmp r12b, 0x3b
jne 0x140038a51
mov eax, dword [rdi + 0x1ec]
test eax, eax
jne 0x140039c74
mov rax, qword [rdi + 0x1d0]
mov dword [rdi + 0x1ec], 1
mov qword [rdi + 0x1d0], 0
mov qword [rdi + 0x1d8], rax
mov rax, qword [rsp + 0x68]
add rax, 1
jmp 0x140038c74
mov r10d, dword [rdi + 0x1b4]
test r10d, r10d
jne 0x14003983e
cmp qword [rdi + 0x278], 0
je 0x140039ee8
mov eax, dword [rdi + 0x218]
lea rbp, [rsp + 0x70]
mov edx, 0x18
lea r8, str.HB_INLINE__03d
mov rcx, rbp
lea r9d, [rax + 1]
mov dword [rdi + 0x218], r9d
call sym.hb_snprintf
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x140039816
mov rcx, qword [rax]
test rcx, rcx
je 0x140039816
mov r8, rbp
mov edx, dword [r8]
add r8, 4
lea eax, [rdx - 0x1010101]
not edx
and eax, edx
and eax, 0x80808080
je 0x1400397d6
mov edx, eax
shr edx, 0x10
test eax, 0x8080
cmove eax, edx
lea rdx, [r8 + 2]
cmove r8, rdx
mov edx, eax
add dl, al
mov rdx, rbp
sbb r8, 3
sub r8, rbp
call sym.hb_pp_tokenSetValue
mov rax, qword [rdi + 0x208]
mov edx, dword [rdi + 0x214]
mov rcx, qword [rdi + 0x240]
mov r9, qword [rax + 8]
mov dword [rsp + 0x20], edx
mov rdx, rbp
mov r8, qword [rax]
call qword [rdi + 0x278]
mov rax, qword [rdi + 0x208]
mov qword [rax + 8], 0
mov rax, qword [rsp + 0x68]
cmp rax, rbx
setne bpl
add rsi, rax
sub rbx, rax
jmp 0x140038c82
mov dword [rdi + 0x1f4], 1
jmp 0x140039111
add rax, 2
mov qword [rsp + 0x68], rax
cmp rax, rbx
jne 0x140038e6a
mov r8d, dword [rdi + 0x1a8]
mov rbp, rbx
test r8d, r8d
jne 0x140038e91
jmp 0x140038f90
mov ecx, dword [rdi + 0x224]
mov r8d, dword [rdi + 0x228]
test ecx, ecx
jne 0x140039af6
cmp r8d, 5
jne 0x140038b91
movabs rbx, 0x100000000
mov r14, qword [rdi + 0x138]
mov qword [rdi + 0x1e0], 0
mov qword [rdi + 0x1d0], 0
mov qword [rdi + 0x1f0], rbx
add ecx, 1
mov dword [rdi + 0x224], ecx
mov dword [rdi + 0x228], 0
jmp 0x140038b91
mov r8, qword [rsp + 0x68]
nop word [rax + rax]
add r8, 1
mov qword [rsp + 0x68], r8
cmp r8, rbx
jae 0x140039aa7
movzx edx, byte [rsi + r8]
mov eax, edx
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
jbe 0x140039910
cmp dl, 0x5f
je 0x140039910
lea eax, [rdx - 0x30]
cmp al, 9
jbe 0x140039910
mov r9d, dword [rdi + 0x1f4]
test r9d, r9d
je 0x140039955
cmp r8, 4
je 0x140039ac1
cmp dl, 0x26
je 0x140039998
cmp qword [rdi + 0x278], 0
je 0x140039978
mov eax, dword [rdi + 0x21c]
test eax, eax
jne 0x140039978
cmp r8, 9
je 0x14003a2b5
mov r9d, 0x15
mov rdx, rsi
mov rcx, rdi
call sym.hb_pp_tokenAddNext
mov rax, qword [rsp + 0x68]
jmp 0x140038c74
cmp cl, 0x2e
je 0x140039a11
mov rax, rbx
sub rax, r8
cmp rax, 1
jbe 0x14003a207
cmp byte [rsi + r8], 0x26
jne 0x14003a21f
movzx ecx, byte [rsi + r8 + 1]
lea rax, [r8 + 1]
mov r9, rax
mov edx, ecx
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 0x19
jbe 0x1400399e4
cmp cl, 0x5f
je 0x1400399e4
jmp 0x14003a4d1
add rax, 1
mov r8, rax
mov qword [rsp + 0x68], rax
cmp rax, rbx
jae 0x140039998
movzx ecx, byte [rsi + rax]
mov edx, ecx
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 0x19
jbe 0x1400399e0
cmp cl, 0x5f
je 0x1400399e0
lea edx, [rcx - 0x30]
cmp dl, 9
jbe 0x1400399e0
jmp 0x140039993
add r8, 1
mov qword [rsp + 0x68], r8
cmp r8, rbx
jae 0x140039998
movzx edx, byte [rsi + r8]
mov eax, edx
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
jbe 0x140039a11
cmp dl, 0x5f
je 0x140039a11
sub edx, 0x30
cmp dl, 9
jbe 0x140039a11
jmp 0x140039998
mov rcx, rdi
call sym.hb_pp_dumpEnd.part.14
jmp 0x14003984d
mov rcx, qword [rdi + 0x140]
mov rdx, rsi
mov r8, rbx
mov qword [rsp + 0x68], rbx
call sym.hb_membufAddData
mov rcx, qword [rdi + 0x140]
mov edx, 0xa
call sym.hb_membufAddCh
mov rax, qword [rsp + 0x68]
cmp rbx, rax
setne bpl
add rsi, rax
sub rbx, rax
jmp 0x140038c82
mov r9d, 1
jmp 0x140038d9e
mov r10d, dword [rdi + 0x1f4]
test r10d, r10d
je 0x14003995a
cmp r8, 4
jne 0x14003995a
mov r8d, 4
mov rdx, rsi
lea rcx, str.NOTE
call sym.hb_strnicmp
test eax, eax
je 0x140039482
mov r8, qword [rsp + 0x68]
cmp r8, rbx
jae 0x14003995a
movzx edx, byte [rsi + r8]
jmp 0x140039955
movabs rbx, 0x100000000
mov r14, qword [rdi + 0x138]
mov qword [rdi + 0x1e0], 0
mov qword [rdi + 0x1d0], 0
mov qword [rdi + 0x1f0], rbx
test r8d, r8d
je 0x140038b91
cmp r8d, 5
jne 0x1400398f6
jmp 0x1400398ed
cmp rbx, rax
mov rsi, rcx
setne dl
sub rbx, rax
or ebp, edx
jmp 0x140038c82
mov dword [rdi + 0x210], 0
cmp rbx, 2
mov qword [rdi + 0x1d0], 0
setne bpl
add rsi, 2
sub rbx, 2
mov qword [rdi + 0x1e0], 1
xor r13d, r13d
jmp 0x140038c82
mov r8d, 1
cmp rbx, 1
jbe 0x140039345
cmp r12b, 0x2a
jne 0x140039345
cmp byte [rsi + 1], 0x2f
jne 0x140039345
mov dword [rdi + 0x21c], 0
mov r8d, 2
mov qword [rsp + 0x68], 2
jmp 0x140039345
cmp r12b, 0x22
je 0x140039c01
cmp r12b, 0x5c
jne 0x140039e99
cmp rbx, 1
jbe 0x140039e99
mov qword [rsp + 0x68], 2
mov r8d, 2
jmp 0x140039345
cmp r12b, 0x27
jne 0x140039bd3
mov dword [rdi + 0x21c], 0
mov r8d, 1
jmp 0x140039345
add rdx, rdx
mov rcx, rax
mov qword [rbp + 0x10], rdx
call sym.hb_xrealloc
mov rdx, qword [rbp + 8]
mov qword [rbp], rax
jmp 0x140039599
mov rcx, qword [rdi + 0x1c8]
xor edx, edx
sub rsi, qword [rcx]
call sym.hb_membufAddCh
mov rax, qword [rdi + 0x1c8]
mov edx, 2
mov rcx, rdi
add rsi, qword [rax]
lea r8, [rsi + r12]
call sym.hb_pp_error.constprop.31
mov rax, qword [rsp + 0x68]
jmp 0x140038fe2
mov qword [rdi + 0x138], rax
jmp 0x1400396d5
mov ecx, 0x30
mov r12, qword [rdi + 0x1d8]
call sym.hb_xgrab
mov rdx, qword [rdi + 0x138]
lea rcx, [0x1400b8488]
pxor xmm0, xmm0
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], 1
mov qword [rax + 0x20], r12
mov dword [rax + 0x28], 0x401e
movups xmmword [rax], xmm0
mov qword [rdx], rax
mov rdx, qword [rdi + 0x230]
mov qword [rdi + 0x138], rax
mov eax, dword [rdi + 0x228]
add dword [rdx + 0x24], 1
mov dword [rdi + 0x1f4], 1
mov dword [rdi + 0x1ec], 0
test eax, eax
je 0x140039748
cmp eax, 5
jne 0x140039cf4
add dword [rdi + 0x224], 1
mov dword [rdi + 0x228], 0
jmp 0x140039748
cmp r12b, 0x2e
sete cl
jne 0x140039d23
test dl, dl
je 0x140039d23
movzx r11d, byte [rsi + 1]
lea r8d, [r11 - 0x30]
cmp r8b, 9
jbe 0x14003a39e
cmp rbx, 2
jbe 0x140039f15
test cl, cl
je 0x140039f15
cmp byte [rsi + 2], 0x2e
je 0x14003a348
test dl, dl
je 0x140039d64
test al, al
je 0x140039d64
movzx edx, byte [rsi + 1]
mov eax, edx
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
jbe 0x14003a0ee
cmp dl, 0x5f
je 0x14003a0ee
mov eax, dword [rdi + 0x20]
mov r12, qword [rdi]
test eax, eax
jle 0x140039fdb
lea r9d, [rax - 1]
lea rax, [rsi + 1]
mov qword [rsp + 0x100], rdi
mov rdi, rsi
add r9, 1
mov rsi, rbx
mov rbx, rax
shl r9, 5
lea r15, [r12 + r9]
jmp 0x140039dad
add r12, 0x20
cmp r12, r15
je 0x140039fcd
mov rax, qword [r12 + 8]
cmp rax, rsi
ja 0x140039da0
mov rdx, qword [r12]
movzx ecx, byte [rdi]
cmp byte [rdx], cl
jne 0x140039da0
cmp rax, 1
je 0x140039ddc
lea rcx, [rdx + 1]
lea r8, [rax - 1]
mov rdx, rbx
call sym.hb_strnicmp
test eax, eax
jne 0x140039da0
mov rbx, rsi
mov rsi, rdi
mov rdi, qword [rsp + 0x100]
mov r15, qword [r12 + 0x10]
mov rcx, r15
call sym.strlen
movzx r9d, word [r12 + 0x18]
mov rdx, r15
mov rcx, rdi
mov r8, rax
call sym.hb_pp_tokenAddNext
mov rax, qword [r12 + 8]
jmp 0x140038c74
mov rax, qword [rsp + 0x68]
xor r9d, r9d
mov rdx, rsi
mov rcx, rdi
lea r15, [rsp + 0x70]
lea r8, [rax + 1]
mov qword [rsp + 0x68], r8
call sym.hb_pp_tokenAddNext
mov rcx, r15
movsx r9d, r12b
lea r8, str._02x
mov edx, 3
call sym.hb_snprintf
mov r8, r15
mov edx, 1
mov rcx, rdi
call sym.hb_pp_error.constprop.31
jmp 0x140038af5
lea rcx, [rsi + rbx - 1]
lea rdx, [rsi + rbx]
nop dword [rax]
movzx eax, byte [rsi + 1]
mov rbx, rdx
sub rbx, rsi
cmp al, 0x20
je 0x140039e86
cmp al, 9
jne 0x1400393a0
add rsi, 1
cmp rsi, rcx
jne 0x140039e70
mov ebx, 1
jmp 0x140038765
mov r8d, 1
jmp 0x140039345
mov rax, qword [rsp + 0x68]
lea r8, [rax + 1]
jmp 0x140039ebe
lea rax, [r8 + 1]
cmp byte [rsi + rax - 1], 0
jns 0x140039ec8
mov r8, rax
mov qword [rsp + 0x68], r8
cmp rbx, r8
ja 0x140039eb0
mov r9d, 0x18
jmp 0x140038aea
mov dword [rdi + 0x21c], 5
mov r8d, 1
jmp 0x140039345
mov rax, qword [rdi + 0x208]
mov r9d, 0x18
mov rcx, rdi
mov r8, qword [rax + 8]
mov rdx, qword [rax]
call sym.hb_pp_tokenAddNext
jmp 0x14003983e
mov rax, r14
mov ecx, dword [rsp + 0x48]
jmp 0x1400396cc
test dl, dl
je 0x140039f3a
test al, al
je 0x140039f3a
movzx edx, byte [rsi + 1]
mov eax, edx
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
jbe 0x14003a0ee
cmp dl, 0x5f
je 0x14003a0ee
cmp r12b, 0x7b
jne 0x140039d64
mov eax, dword [rdi + 0x1ec]
test eax, eax
jne 0x140039d64
mov eax, dword [rdi + 0x21c]
mov edx, eax
and edx, 0xfffffffd
cmp edx, 1
jne 0x140039d64
cmp eax, 1
je 0x14003a5b9
mov rdx, qword [rdi + 0x230]
mov dword [rdi + 0x21c], 0
mov dword [rdi + 0x210], 6
mov eax, dword [rdx + 0x18]
sub eax, 1
mov dword [rdi + 0x214], eax
mov rax, qword [rdi + 0x208]
test rax, rax
je 0x14003a5a8
mov qword [rax + 8], 0
jmp 0x1400389c1
mov rdx, qword [rdi + 0x1f8]
mov r9, rbx
mov r8, rsi
mov rcx, rdi
call sym.hb_pp_tokenAddStreamFunc
jmp 0x140039a85
mov rbx, rsi
mov rsi, rdi
mov rdi, qword [rsp + 0x100]
lea r12, [0x1400b8a40]
lea r15, [rsi + 1]
jmp 0x14003a000
add r12, 0x20
lea rax, str.Illegal_character_x_s
cmp r12, rax
je 0x14003a055
mov rax, qword [r12 + 8]
cmp rax, rbx
ja 0x140039ff0
mov rdx, qword [r12]
movzx ecx, byte [rsi]
cmp byte [rdx], cl
jne 0x140039ff0
cmp rax, 1
je 0x140039dea
cmp rax, 3
ja 0x14003a06e
movzx ecx, byte [rsi + 1]
cmp byte [rdx + 1], cl
jne 0x140039ff0
cmp rax, 2
je 0x140039dea
movzx eax, byte [rsi + 2]
cmp byte [rdx + 2], al
je 0x140039dea
add r12, 0x20
lea rax, str.Illegal_character_x_s
cmp r12, rax
jne 0x14003a000
mov rax, qword [rsp + 0x68]
mov r9d, 0x19
lea r8, [rax + 1]
mov qword [rsp + 0x68], r8
jmp 0x140038aea
lea rcx, [rdx + 1]
lea r8, [rax - 1]
mov rdx, r15
call sym.hb_strnicmp
test eax, eax
jne 0x140039ff0
jmp 0x140039dea
mov rdx, rbp
mov rcx, rsi
call sym.hb_strRemEscSeq
mov rbx, qword [rsp + 0x68]
jmp 0x140039630
mov r13d, dword [rdx + 0x2c]
test r13d, r13d
je 0x140038b70
jmp 0x140039668
mov dword [rdi + 0x21c], 6
mov r8d, 1
jmp 0x140039345
sub dword [rdi + 0x220], 1
mov r8d, 1
jne 0x140039345
mov dword [rdi + 0x210], 0
jmp 0x140039345
mov r8, qword [rsp + 0x68]
mov rax, rbx
sub rax, r8
cmp rax, 1
jbe 0x14003a1d1
cmp byte [rsi + r8], 0x26
jne 0x14003a1e1
movzx ecx, byte [rsi + r8 + 1]
lea rax, [r8 + 1]
mov r9, rax
mov edx, ecx
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 0x19
jbe 0x14003a131
cmp cl, 0x5f
jne 0x14003a576
add r10d, 1
mov r9, r8
jmp 0x14003a147
mov r9, rax
add rax, 1
mov r8, rax
mov qword [rsp + 0x68], rax
cmp rax, rbx
jae 0x14003a0f3
movzx ecx, byte [rsi + rax]
mov edx, ecx
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 0x19
jbe 0x14003a140
cmp cl, 0x5f
je 0x14003a140
lea edx, [rcx - 0x30]
cmp dl, 9
jbe 0x14003a140
cmp cl, 0x2e
jne 0x14003a0f3
lea r8, [r9 + 2]
mov qword [rsp + 0x68], r8
cmp rbx, r8
jbe 0x14003a0f3
movzx edx, byte [rsi + r8]
mov eax, edx
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
jbe 0x14003a1af
cmp dl, 0x5f
je 0x14003a1af
sub edx, 0x30
cmp dl, 9
ja 0x14003a0f3
add r8, 1
add r10d, 1
mov qword [rsp + 0x68], r8
cmp r8, rbx
jb 0x14003a18d
mov rax, rbx
sub rax, r8
cmp rax, 1
ja 0x14003a103
cmp rbx, r8
jbe 0x14003a1e1
cmp byte [rsi + r8], 0x26
je 0x14003a5f4
xor r9d, r9d
cmp r10d, 1
setne r9b
add r9d, 0x16
jmp 0x140038aea
add dword [rdi + 0x220], 1
mov r8d, 1
jmp 0x140039345
cmp rbx, r8
jbe 0x14003a21f
cmp byte [rsi + r8], 0x26
jne 0x14003a21f
lea r9, [r8 + 1]
mov qword [rsp + 0x68], r9
mov r8, r9
mov r9d, 0x17
jmp 0x14003997e
movzx eax, byte [rsi + 1]
and eax, 0xffffffdf
cmp al, 0x58
je 0x14003a3d9
cmp al, 0x44
jne 0x140038aa4
movzx eax, byte [rsi + 2]
mov r8d, 3
sub eax, 0x30
cmp al, 9
jbe 0x14003a26a
jmp 0x140038aa4
movzx eax, byte [rsi + r8]
lea rdx, [r8 + 1]
sub eax, 0x30
cmp al, 9
ja 0x14003a274
mov r8, rdx
mov qword [rsp + 0x68], r8
cmp rbx, r8
jne 0x14003a257
mov r9d, 0x2b
jmp 0x140038aea
mov r8d, 0x401f
xor edx, edx
lea rcx, [0x1400b8533]
call sym.hb_pp_tokenNew.constprop.27
mov rdx, qword [rdi + 0x138]
mov r8, qword [rdi + 0x230]
mov qword [rdx], rax
mov qword [rdi + 0x138], rax
add dword [r8 + 0x24], 1
jmp 0x140038c24
mov rdx, rsi
lea rcx, str.hb_inline
call sym.hb_strnicmp
test eax, eax
jne 0x14003a3cf
mov eax, dword [rdi + 0x1ec]
test eax, eax
jne 0x14003a4df
mov rax, qword [rdi + 0x138]
mov qword [rsp + 0x58], rax
mov r8, qword [rsp + 0x68]
mov r9d, 0x15
mov rdx, rsi
mov rcx, rdi
call sym.hb_pp_tokenAddNext
mov qword [rdi + 0x21c], 1
jmp 0x140038af5
movzx eax, byte [rsi + rdx + 2]
sub eax, 0x30
cmp al, 9
ja 0x140038ae4
lea r8, [rdx + 3]
jmp 0x14003a339
movzx eax, byte [rsi + r8]
lea rdx, [r8 + 1]
sub eax, 0x30
cmp al, 9
ja 0x140038ae4
mov r8, rdx
mov qword [rsp + 0x68], r8
cmp rbx, r8
ja 0x14003a322
jmp 0x140038ae4
movzx ecx, byte [rsi + 1]
lea r11, [0x1400b853c]
mov r8d, ecx
and r8d, 0xffffffdf
cmp r8b, 0x54
je 0x14003a379
cmp r8b, 0x59
je 0x14003a379
and ecx, 0xffffffd7
cmp cl, 0x46
jne 0x140039d3f
lea r11, [0x1400b8540]
mov r9d, 0x402d
mov r8d, 3
mov rdx, r11
mov rcx, rdi
mov qword [rsp + 0x68], 3
call sym.hb_pp_tokenAddNext
jmp 0x1400389c1
mov rax, qword [rsp + 0x68]
lea r8, [rax + 1]
jmp 0x14003a3c0
movzx eax, byte [rsi + r8]
lea rdx, [r8 + 1]
sub eax, 0x30
cmp al, 9
ja 0x140038ae4
mov r8, rdx
mov qword [rsp + 0x68], r8
cmp rbx, r8
ja 0x14003a3a9
jmp 0x140038ae4
mov r8, qword [rsp + 0x68]
jmp 0x140039978
movzx eax, byte [rsi + 2]
mov edx, eax
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 5
jbe 0x14003a3f5
sub eax, 0x30
cmp al, 9
ja 0x140038aa4
mov r8d, 3
mov qword [rsp + 0x68], r8
cmp rbx, r8
je 0x14003a42a
movzx eax, byte [rsi + r8]
lea rcx, [r8 + 1]
mov edx, eax
and edx, 0xffffffdf
sub edx, 0x41
cmp dl, 5
jbe 0x14003a5a0
sub eax, 0x30
cmp al, 9
jbe 0x14003a5a0
mov r9d, 0x2a
mov rdx, rsi
mov rcx, rdi
call sym.hb_pp_tokenAddNext
jmp 0x1400389c1
movzx eax, byte [rsi + 1]
cmp al, 0x2a
je 0x14003a590
cmp al, 0x2f
jne 0x140039345
mov qword [rsp + 0x68], 0
jmp 0x14003957e
mov ebx, dword [rdx + 0x2c]
test ebx, ebx
setne al
jmp 0x140038bfc
mov ebx, 1
jmp 0x140039345
mov dword [rdi + 0x210], 0
mov esi, dword [rdi + 0x1b4]
test esi, esi
je 0x14003a4bd
mov rax, qword [rdi + 0x140]
mov qword [rax + 8], 0
jmp 0x140038c17
xor r8d, r8d
mov edx, 0x17
mov rcx, rdi
call sym.hb_pp_error.constprop.31
mov r8, qword [rdi + 0x230]
jmp 0x140038c17
mov rcx, rdi
call sym.hb_pp_dumpEnd.part.14
mov r8, qword [rdi + 0x230]
jmp 0x140038c17
cmp rbx, r8
ja 0x14003a217
jmp 0x14003a21f
mov r12, qword [rdi + 0x1d8]
mov ecx, 0x30
call sym.hb_xgrab
lea rcx, [0x1400b8488]
pxor xmm0, xmm0
mov qword [rax + 0x10], rcx
mov rcx, rax
mov qword [rax + 0x20], r12
movups xmmword [rax], xmm0
mov qword [rax + 0x18], 1
mov dword [rax + 0x28], 0x401e
mov qword [rsp + 0x58], rax
mov rax, qword [rdi + 0x138]
mov qword [rax], rcx
mov rax, qword [rdi + 0x230]
mov qword [rdi + 0x138], rcx
add dword [rax + 0x24], 1
mov eax, dword [rdi + 0x228]
mov dword [rdi + 0x1f4], 1
mov dword [rdi + 0x1ec], 0
test eax, eax
je 0x14003a2e6
cmp eax, 5
jne 0x14003a567
add dword [rdi + 0x224], 1
mov dword [rdi + 0x228], 0
jmp 0x14003a2e6
cmp rbx, r8
jbe 0x14003a1e1
add r10d, 1
mov qword [rsp + 0x68], r9
mov r8, r9
jmp 0x14003a1e1
mov dword [rdi + 0x21c], 4
jmp 0x140039be7
mov r8, rcx
jmp 0x14003a3fb
call sym.hb_membufNew
mov qword [rdi + 0x208], rax
jmp 0x1400389c1
mov rcx, rdi
mov r9d, 0x4032
mov r8d, 1
lea rdx, [0x1400b8588]
call sym.hb_pp_tokenAddNext
mov r9d, 0x4033
mov r8d, 1
mov rcx, rdi
lea rdx, [0x1400b858a]
call sym.hb_pp_tokenAddNext
jmp 0x140039f6f
lea r9, [r8 + 1]
jmp 0x14003a57f