Function at 0x59a720
Capabilities:
Parse credit card information

Disassembly:
lea r12, [rsp - 0x478]
cmp r12, qword [r14 + 0x10]
jbe 0x59c9ad
push rbp
mov rbp, rsp
sub rsp, 0x4f0
mov qword [rsp + 0x500], rax
mov qword [rsp + 0x508], rbx
mov word [rsp + 0x510], cx
mov qword [rsp + 0x100], 0
movups xmmword [rsp + 0x1f0], xmm15
movups xmmword [rsp + 0x4d0], xmm15
movups xmmword [rsp + 0x4e0], xmm15
lea rcx, [rsp + 0x4d0]
mov qword [rsp + 0x130], rcx
test byte [rcx], al
lea rdx, [sym.regexp_syntax.parse.func1]
mov qword [rsp + 0x4d0], rdx
test byte [rcx], al
lea rdx, [rsp + 0x1f0]
mov qword [rsp + 0x4d8], rdx
test byte [rcx], al
mov rcx, qword [rsp + 0x500]
mov rdx, qword [rsp + 0x508]
mov qword [rsp + 0x4e8], rdx
mov qword [rsp + 0x4e0], rcx
mov rcx, qword [rsp + 0x130]
mov qword [rsp + 0xd0], rcx
lea rax, [rsp + 0xb8]
call sym.runtime.deferprocStack
test eax, eax
jne 0x59aa10
jmp 0x59a7f8
movzx ecx, word [rsp + 0x510]
test cx, 2
jne 0x59a80c
jmp 0x59a926
mov rax, qword [rsp + 0x500]
mov rbx, qword [rsp + 0x508]
nop dword [rax]
call sym.regexp_syntax.checkUTF8
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0x1e8], rbx
test rax, rax
jne 0x59a83c
jmp 0x59a89e
mov qword [rsp + 0x2b0], rax
mov qword [rsp + 0x2b8], rbx
mov qword [rsp + 0x100], 0
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rsp + 0x2b8]
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rcx
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
movzx ecx, word [rsp + 0x510]
mov rax, qword [rsp + 0x500]
mov rbx, qword [rsp + 0x508]
call sym.regexp_syntax.literalRegexp
mov qword [rsp + 0x140], rax
movups xmmword [rsp + 0x2a0], xmm15
mov rdx, qword [rsp + 0x140]
mov qword [rsp + 0x100], rdx
mov rdx, qword [rsp + 0x2a8]
mov rsi, qword [rsp + 0x2a0]
mov qword [rsp + 0x1f0], rsi
mov qword [rsp + 0x1f8], rdx
nop dword [rax]
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
lea rax, [0x005f8fa0]
call sym.runtime.newobject
mov qword [rsp + 0x148], rax
cmp dword [0x0081bd30], 0
je 0x59a945
jmp 0x59a947
jmp 0x59a968
mov qword [rsp + 0x110], rax
mov rbx, rax
lea rax, [0x005f8fa0]
call sym.runtime.wbZero
mov rax, qword [rsp + 0x110]
jmp 0x59a968
mov rdi, rax
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046b922
mov rbp, qword [rbp]
mov dword [rsp + 0x64], 0
mov byte [rsp + 0x55], 0
movups xmmword [rsp + 0x1b0], xmm15
mov r11, qword [rsp + 0x148]
movzx r12d, word [rsp + 0x510]
mov word [r11], r12w
mov r11, qword [rsp + 0x148]
mov r12, qword [rsp + 0x500]
mov r13, qword [rsp + 0x508]
mov qword [r11 + 0x38], r13
cmp dword [0x0081bd30], 0
je 0x59a9d0
jmp 0x59a9d2
jmp 0x59a9ea
mov rax, r11
call sym.runtime.gcWriteBarrier2
mov qword [r11], r12
mov r13, qword [rax + 0x30]
mov qword [r11 + 8], r13
mov r11, rax
jmp 0x59a9ea
mov qword [r11 + 0x30], r12
mov r11, qword [rsp + 0x500]
mov r12, qword [rsp + 0x508]
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r12
jmp 0x59aa36
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
cmp qword [rsp + 0x158], 0
nop
jne 0x59aa47
jmp 0x59c50a
movups xmmword [rsp + 0x190], xmm15
jmp 0x59aa52
mov rcx, qword [rsp + 0x158]
mov r11, qword [rsp + 0x150]
test rcx, rcx
ja 0x59aa6c
jmp 0x59c9a5
movzx r11d, byte [r11]
mov byte [rsp + 0x59], r11b
cmp r11b, 0x2e
jbe 0x59aa85
nop dword [rax + rax]
jmp 0x59aed0
cmp r11b, 0x28
jbe 0x59aa90
jmp 0x59ad67
cmp r11b, 0x24
je 0x59aa9b
jmp 0x59ab38
jmp 0x59aa9d
mov rcx, qword [rsp + 0x148]
movzx ecx, word [rcx]
test cx, 0x10
jne 0x59aab1
jmp 0x59aadf
mov rax, qword [rsp + 0x148]
mov ebx, 0xa
nop
call sym.regexp_syntax._parser_.op
mov qword [rsp + 0x140], rax
test byte [rax], al
test byte [rax], al
movzx ecx, word [rax + 2]
bts ecx, 8
mov word [rax + 2], cx
jmp 0x59aaf3
mov rax, qword [rsp + 0x148]
mov ebx, 8
call sym.regexp_syntax._parser_.op
jmp 0x59aaf3
mov rcx, qword [rsp + 0x158]
mov r11, qword [rsp + 0x150]
cmp rcx, 1
jae 0x59ab0e
jmp 0x59c999
lea r12, [rcx - 1]
mov r13, r12
neg r12
sar r12, 0x3f
and r12d, 1
add r11, r12
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r13
jmp 0x59c71c
cmp r11b, 0x28
je 0x59ab45
nop
jmp 0x59ad5e
jmp 0x59ab47
mov rdx, qword [rsp + 0x148]
movzx edx, word [rdx]
test dx, 0x40
setne byte [rsp + 0x5c]
jne 0x59ab62
nop
jmp 0x59ab7d
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0xa0], rdx
cmp rdx, 2
setge byte [rsp + 0x5c]
jmp 0x59ab7f
jmp 0x59ab7f
movzx edx, byte [rsp + 0x5c]
mov byte [rsp + 0x5d], dl
test dl, dl
jne 0x59ab8e
jmp 0x59abb6
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
nop
cmp rcx, 1
ja 0x59abab
jmp 0x59c98f
cmp byte [rdx + 1], 0x3f
sete byte [rsp + 0x5d]
jmp 0x59abb8
jmp 0x59abb8
cmp byte [rsp + 0x5d], 0
jne 0x59abc5
nop
jmp 0x59acd2
movups xmmword [rsp + 0x2f0], xmm15
movups xmmword [rsp + 0x2e0], xmm15
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x158]
call sym.regexp_syntax._parser_.parsePerlFlags
mov qword [rsp + 0x2f0], rax
mov qword [rsp + 0x2f8], rbx
mov qword [rsp + 0x2e0], rcx
mov qword [rsp + 0x2e8], rdi
mov rdx, qword [rsp + 0x2f0]
mov rsi, qword [rsp + 0x2f8]
mov qword [rsp + 0x410], rdx
mov qword [rsp + 0x418], rsi
mov rdx, qword [rsp + 0x2e0]
mov rsi, qword [rsp + 0x2e8]
mov qword [rsp + 0x400], rdx
mov qword [rsp + 0x408], rsi
mov rdx, qword [rsp + 0x410]
mov rsi, qword [rsp + 0x418]
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x158], rsi
mov rdx, qword [rsp + 0x400]
mov rsi, qword [rsp + 0x408]
mov qword [rsp + 0x1f0], rdx
mov qword [rsp + 0x1f8], rsi
test rdx, rdx
jne 0x59ac9b
jmp 0x59accd
mov qword [rsp + 0x100], 0
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
jmp 0x59c71c
mov rcx, qword [rsp + 0x148]
mov rdx, qword [rsp + 0x148]
mov rdx, qword [rdx + 0x28]
inc rdx
mov qword [rcx + 0x28], rdx
mov rax, qword [rsp + 0x148]
mov ebx, 0xffffff80
call sym.regexp_syntax._parser_.op
mov qword [rsp + 0x140], rax
test byte [rax], al
mov rcx, qword [rsp + 0x148]
mov rcx, qword [rcx + 0x28]
mov qword [rax + 0x58], rcx
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
cmp rcx, 1
jae 0x59ad34
jmp 0x59c985
lea r11, [rcx - 1]
mov r12, r11
neg r11
sar r11, 0x3f
and r11d, 1
add r11, rdx
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r12
jmp 0x59c71c
nop
jmp 0x59ad62
jmp 0x59aecb
cmp r11b, 0x29
je 0x59ad72
jmp 0x59ae15
jmp 0x59ad74
mov rax, qword [rsp + 0x148]
nop dword [rax]
call sym.regexp_syntax._parser_.parseRightParen
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rbx
test rax, rax
jne 0x59ad9c
jmp 0x59adce
mov qword [rsp + 0x100], 0
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
mov rcx, qword [rsp + 0x158]
mov r11, qword [rsp + 0x150]
nop
cmp rcx, 1
jae 0x59adeb
jmp 0x59c977
lea r12, [rcx - 1]
mov r13, r12
neg r12
sar r12, 0x3f
and r12d, 1
add r11, r12
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r13
jmp 0x59c71c
cmp r11b, 0x2a
jae 0x59ae20
jmp 0x59ae2f
cmp r11b, 0x2b
jbe 0x59ae28
jmp 0x59ae2d
jmp 0x59aeed
jmp 0x59ae31
jmp 0x59ae31
cmp r11b, 0x2e
je 0x59ae3c
jmp 0x59aec5
jmp 0x59ae3e
mov rcx, qword [rsp + 0x148]
movzx ecx, word [rcx]
test cx, 8
jne 0x59ae52
jmp 0x59ae67
mov rax, qword [rsp + 0x148]
mov ebx, 6
nop
call sym.regexp_syntax._parser_.op
jmp 0x59ae7b
mov rax, qword [rsp + 0x148]
mov ebx, 5
call sym.regexp_syntax._parser_.op
jmp 0x59ae7b
mov rcx, qword [rsp + 0x158]
mov r11, qword [rsp + 0x150]
cmp rcx, 1
jae 0x59ae96
jmp 0x59c96d
lea r12, [rcx - 1]
mov r13, r12
neg r12
sar r12, 0x3f
and r12d, 1
add r11, r12
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r13
nop dword [rax + rax]
jmp 0x59c71c
jmp 0x59aec7
jmp 0x59aec9
jmp 0x59aecb
jmp 0x59c3d7
cmp r11b, 0x5c
jbe 0x59aee0
jmp 0x59bda7
cmp r11b, 0x3f
je 0x59aeeb
jmp 0x59b12b
jmp 0x59aeed
mov rdx, qword [rsp + 0x150]
mov r11, qword [rsp + 0x158]
mov qword [rsp + 0x210], rdx
mov qword [rsp + 0x218], r11
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
nop dword [rax]
test rcx, rcx
ja 0x59af2a
jmp 0x59c966
movzx edx, byte [rdx]
mov byte [rsp + 0x58], dl
cmp dl, 0x2a
je 0x59af38
jmp 0x59af42
jmp 0x59af3a
mov byte [rsp + 0x55], 0xe
nop
jmp 0x59af68
cmp dl, 0x2b
je 0x59af49
jmp 0x59af52
jmp 0x59af4b
mov byte [rsp + 0x55], 0xf
jmp 0x59af68
cmp dl, 0x3f
je 0x59af59
jmp 0x59af62
jmp 0x59af5b
mov byte [rsp + 0x55], 0x10
jmp 0x59af68
jmp 0x59af64
jmp 0x59af66
jmp 0x59af68
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
cmp rcx, 1
jae 0x59af85
nop
jmp 0x59c95c
lea r11, [rcx - 1]
mov r12, r11
neg r11
sar r11, 0x3f
and r11d, 1
add rdx, r11
mov qword [rsp + 0x230], rdx
mov qword [rsp + 0x238], r12
movups xmmword [rsp + 0x2f0], xmm15
movups xmmword [rsp + 0x2e0], xmm15
mov rax, qword [rsp + 0x148]
movzx ebx, byte [rsp + 0x55]
mov rdx, qword [rsp + 0x1b0]
mov r9, qword [rsp + 0x230]
mov rsi, qword [rsp + 0x210]
mov r11, qword [rsp + 0x1b8]
mov r10, qword [rsp + 0x238]
mov r8, qword [rsp + 0x218]
mov qword [rsp], rdx
mov qword [rsp + 8], r11
xor ecx, ecx
mov rdi, rcx
call sym.regexp_syntax._parser_.repeat
mov qword [rsp + 0x2f0], rax
mov qword [rsp + 0x2f8], rbx
mov qword [rsp + 0x2e0], rcx
mov qword [rsp + 0x2e8], rdi
mov rdx, qword [rsp + 0x2f0]
mov r11, qword [rsp + 0x2f8]
mov qword [rsp + 0x3d0], rdx
mov qword [rsp + 0x3d8], r11
mov rdx, qword [rsp + 0x2e0]
mov r11, qword [rsp + 0x2e8]
mov qword [rsp + 0x3c0], rdx
mov qword [rsp + 0x3c8], r11
mov rdx, qword [rsp + 0x3d0]
mov r11, qword [rsp + 0x3d8]
mov qword [rsp + 0x230], rdx
mov qword [rsp + 0x238], r11
mov rdx, qword [rsp + 0x3c0]
mov r11, qword [rsp + 0x3c8]
mov qword [rsp + 0x1f0], rdx
mov qword [rsp + 0x1f8], r11
test rdx, rdx
jne 0x59b0b3
jmp 0x59b0e6
mov qword [rsp + 0x100], 0
nop
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
mov r11, qword [rsp + 0x210]
mov r12, qword [rsp + 0x218]
mov qword [rsp + 0x190], r11
mov qword [rsp + 0x198], r12
mov r11, qword [rsp + 0x230]
mov r12, qword [rsp + 0x238]
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r12
jmp 0x59c71c
cmp r11b, 0x5b
je 0x59b136
jmp 0x59b246
jmp 0x59b138
movups xmmword [rsp + 0x2f0], xmm15
movups xmmword [rsp + 0x2e0], xmm15
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x158]
call sym.regexp_syntax._parser_.parseClass
mov qword [rsp + 0x2f0], rax
mov qword [rsp + 0x2f8], rbx
mov qword [rsp + 0x2e0], rcx
mov qword [rsp + 0x2e8], rdi
mov rdx, qword [rsp + 0x2f0]
mov rsi, qword [rsp + 0x2f8]
mov qword [rsp + 0x3f0], rdx
mov qword [rsp + 0x3f8], rsi
mov rdx, qword [rsp + 0x2e0]
mov rsi, qword [rsp + 0x2e8]
mov qword [rsp + 0x3e0], rdx
mov qword [rsp + 0x3e8], rsi
mov rdx, qword [rsp + 0x3f0]
mov rsi, qword [rsp + 0x3f8]
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x158], rsi
mov rdx, qword [rsp + 0x3e0]
mov rsi, qword [rsp + 0x3e8]
mov qword [rsp + 0x1f0], rdx
mov qword [rsp + 0x1f8], rsi
test rdx, rdx
jne 0x59b20e
jmp 0x59b241
mov qword [rsp + 0x100], 0
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
nop
ret
jmp 0x59c71c
cmp r11b, 0x5c
je 0x59b251
jmp 0x59bd9c
jmp 0x59b253
mov rsi, qword [rsp + 0x148]
movzx esi, word [rsi]
test si, 0x40
setne byte [rsp + 0x5b]
jne 0x59b26c
jmp 0x59b287
mov rsi, qword [rsp + 0x158]
mov qword [rsp + 0x90], rsi
cmp rsi, 2
setge byte [rsp + 0x5b]
jmp 0x59b289
jmp 0x59b289
cmp byte [rsp + 0x5b], 0
jne 0x59b295
jmp 0x59b700
mov rcx, qword [rsp + 0x158]
mov rsi, qword [rsp + 0x150]
cmp rcx, 1
ja 0x59b2b0
jmp 0x59c952
movzx esi, byte [rsi + 1]
mov byte [rsp + 0x57], sil
cmp sil, 0x43
jbe 0x59b2c5
nop
jmp 0x59b4e5
cmp sil, 0x41
je 0x59b2cd
jmp 0x59b32f
jmp 0x59b2cf
mov rax, qword [rsp + 0x148]
mov ebx, 9
nop dword [rax]
call sym.regexp_syntax._parser_.op
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
cmp rcx, 2
jae 0x59b305
nop dword [rax + rax]
jmp 0x59c948
lea r11, [rcx - 2]
mov r12, r11
neg r11
sar r11, 0x3f
and r11d, 2
add r11, rdx
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r12
jmp 0x59c71c
cmp sil, 0x42
je 0x59b337
jmp 0x59b395
jmp 0x59b339
mov rax, qword [rsp + 0x148]
mov ebx, 0xc
call sym.regexp_syntax._parser_.op
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
nop dword [rax + rax]
cmp rcx, 2
jae 0x59b36b
jmp 0x59c93e
lea r11, [rcx - 2]
mov r12, r11
neg r11
sar r11, 0x3f
and r11d, 2
add r11, rdx
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r12
jmp 0x59c71c
cmp sil, 0x43
je 0x59b3a5
nop dword [rax + rax]
jmp 0x59b4d7
jmp 0x59b3a7
mov rdx, qword [rsp + 0x158]
mov rbx, qword [rsp + 0x150]
cmp rdx, 2
jae 0x59b3c5
nop dword [rax]
jmp 0x59c934
jmp 0x59b3c7
mov qword [rsp + 0x2f0], rbx
mov qword [rsp + 0x2f8], 2
lea rax, [0x005ec380]
call sym.runtime.newobject
mov qword [rsp + 0x120], rax
mov qword [rax + 8], 0x17
cmp dword [0x0081bd30], 0
nop
je 0x59b404
jmp 0x59b406
jmp 0x59b413
mov rcx, qword [rax]
call sym.runtime.gcWriteBarrier1
mov qword [r11], rcx
jmp 0x59b413
lea rcx, [0x00606359]
mov qword [rax], rcx
mov rax, qword [rsp + 0x120]
test byte [rax], al
mov rcx, qword [rsp + 0x2f0]
mov rdx, qword [rsp + 0x2f8]
mov qword [rax + 0x18], rdx
cmp dword [0x0081bd30], 0
je 0x59b446
jmp 0x59b448
jmp 0x59b45a
call sym.runtime.gcWriteBarrier2
mov qword [r11], rcx
mov rdx, qword [rax + 0x10]
mov qword [r11 + 8], rdx
jmp 0x59b45a
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x138], rax
lea rcx, [0x006ef620]
mov qword [rsp + 0x280], rcx
mov qword [rsp + 0x288], rax
mov qword [rsp + 0x100], 0
mov rax, qword [rsp + 0x280]
mov rcx, qword [rsp + 0x288]
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rcx
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
jmp 0x59b4d9
jmp 0x59b4e0
jmp 0x59b6fb
cmp sil, 0x51
je 0x59b4f0
jmp 0x59b625
jmp 0x59b4f2
movups xmmword [rsp + 0x1a0], xmm15
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
cmp rcx, 2
jae 0x59b516
jmp 0x59c92a
lea rsi, [rcx - 2]
mov r8, rsi
neg rsi
sar rsi, 0x3f
and esi, 2
add rdx, rsi
mov qword [rsp + 0x2f0], rdx
mov qword [rsp + 0x2f8], r8
movups xmmword [rsp + 0x2d0], xmm15
movups xmmword [rsp + 0x2c0], xmm15
mov rax, qword [rsp + 0x2f0]
mov rbx, qword [rsp + 0x2f8]
lea rcx, [0x00601349]
mov edi, 2
call sym.strings.Cut
mov qword [rsp + 0x2d0], rax
mov qword [rsp + 0x2d8], rbx
mov qword [rsp + 0x2c0], rcx
mov qword [rsp + 0x2c8], rdi
mov byte [rsp + 0x5b], sil
mov rdx, qword [rsp + 0x2d0]
mov rsi, qword [rsp + 0x2d8]
mov qword [rsp + 0x380], rdx
mov qword [rsp + 0x388], rsi
mov rdx, qword [rsp + 0x2c0]
mov rsi, qword [rsp + 0x2c8]
mov qword [rsp + 0x370], rdx
mov qword [rsp + 0x378], rsi
movzx edx, byte [rsp + 0x5b]
mov byte [rsp + 0x5e], dl
mov rdx, qword [rsp + 0x380]
mov rsi, qword [rsp + 0x388]
mov qword [rsp + 0x1a0], rdx
mov qword [rsp + 0x1a8], rsi
mov rdx, qword [rsp + 0x370]
mov rsi, qword [rsp + 0x378]
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x158], rsi
nop dword [rax + rax]
jmp 0x59c790
cmp sil, 0x62
je 0x59b62d
jmp 0x59b68f
jmp 0x59b62f
mov rax, qword [rsp + 0x148]
mov ebx, 0xb
nop dword [rax]
call sym.regexp_syntax._parser_.op
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
cmp rcx, 2
jae 0x59b665
nop dword [rax + rax]
jmp 0x59c786
lea r11, [rcx - 2]
mov r12, r11
neg r11
sar r11, 0x3f
and r11d, 2
add r11, rdx
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r12
jmp 0x59c71c
cmp sil, 0x7a
je 0x59b697
jmp 0x59b6f5
jmp 0x59b699
mov rax, qword [rsp + 0x148]
mov ebx, 0xa
call sym.regexp_syntax._parser_.op
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
nop dword [rax + rax]
cmp rcx, 2
jae 0x59b6cb
jmp 0x59c77c
lea r11, [rcx - 2]
mov r12, r11
neg r11
sar r11, 0x3f
and r11d, 2
add r11, rdx
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r12
jmp 0x59c71c
jmp 0x59b6f7
jmp 0x59b6f9
jmp 0x59b6fb
jmp 0x59b6fd
jmp 0x59b702
jmp 0x59b702
mov rax, qword [rsp + 0x148]
mov ebx, 4
call sym.regexp_syntax._parser_.newRegexp
mov qword [rsp + 0x108], rax
test byte [rax], al
mov rcx, qword [rsp + 0x148]
movzx ecx, word [rcx]
mov word [rax + 2], cx
mov rcx, qword [rsp + 0x158]
mov qword [rsp + 0x90], rcx
cmp rcx, 2
setge byte [rsp + 0x5b]
jge 0x59b74a
jmp 0x59b7ad
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
nop word [rax + rax]
cmp rcx, 1
ja 0x59b76b
jmp 0x59c772
cmp byte [rdx + 1], 0x70
sete byte [rsp + 0x5d]
je 0x59b778
jmp 0x59b77a
jmp 0x59b7a2
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
cmp rcx, 1
ja 0x59b795
jmp 0x59c768
cmp byte [rdx + 1], 0x50
sete byte [rsp + 0x5d]
nop
jmp 0x59b7a2
movzx edx, byte [rsp + 0x5d]
mov byte [rsp + 0x5b], dl
jmp 0x59b7af
jmp 0x59b7af
cmp byte [rsp + 0x5b], 0
jne 0x59b7bb
jmp 0x59ba67
mov rdx, qword [rsp + 0x108]
test byte [rdx], al
add rdx, 0x40
test byte [rdx], al
jmp 0x59b7cd
jmp 0x59b7cf
mov qword [rsp + 0x488], rdx
mov qword [rsp + 0x490], 0
mov qword [rsp + 0x498], 2
mov qword [rsp + 0x470], 0
movups xmmword [rsp + 0x478], xmm15
movups xmmword [rsp + 0x2c0], xmm15
movups xmmword [rsp + 0x2e0], xmm15
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x488]
mov rsi, qword [rsp + 0x490]
mov r8, qword [rsp + 0x498]
call sym.regexp_syntax._parser_.parseUnicodeClass
mov qword [rsp + 0x470], rax
mov qword [rsp + 0x478], rbx
mov qword [rsp + 0x480], rcx
mov qword [rsp + 0x2c0], rdi
mov qword [rsp + 0x2c8], rsi
mov qword [rsp + 0x2e0], r8
mov qword [rsp + 0x2e8], r9
mov rdx, qword [rsp + 0x470]
mov r9, qword [rsp + 0x478]
mov r10, qword [rsp + 0x480]
mov qword [rsp + 0x4b8], rdx
mov qword [rsp + 0x4c0], r9
mov qword [rsp + 0x4c8], r10
mov rdx, qword [rsp + 0x2c0]
mov r9, qword [rsp + 0x2c8]
mov qword [rsp + 0x340], rdx
mov qword [rsp + 0x348], r9
mov rdx, qword [rsp + 0x2e0]
mov r9, qword [rsp + 0x2e8]
mov qword [rsp + 0x330], rdx
mov qword [rsp + 0x338], r9
mov rdx, qword [rsp + 0x4b8]
mov r9, qword [rsp + 0x4c0]
mov r10, qword [rsp + 0x4c8]
mov qword [rsp + 0x458], rdx
mov qword [rsp + 0x460], r9
mov qword [rsp + 0x468], r10
mov rdx, qword [rsp + 0x340]
mov r9, qword [rsp + 0x348]
mov qword [rsp + 0x170], rdx
mov qword [rsp + 0x178], r9
mov rdx, qword [rsp + 0x330]
mov r9, qword [rsp + 0x338]
mov qword [rsp + 0x1c0], rdx
mov qword [rsp + 0x1c8], r9
test rdx, rdx
jne 0x59b96a
jmp 0x59b9cc
mov qword [rsp + 0x260], rdx
mov qword [rsp + 0x268], r9
mov qword [rsp + 0x100], 0
mov rax, qword [rsp + 0x260]
mov rcx, qword [rsp + 0x268]
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rcx
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
cmp qword [rsp + 0x458], 0
jne 0x59b9dc
jmp 0x59ba65
mov rcx, qword [rsp + 0x108]
test byte [rcx], al
mov rdx, qword [rsp + 0x458]
mov rsi, qword [rsp + 0x460]
mov rdi, qword [rsp + 0x468]
mov qword [rcx + 0x30], rsi
mov qword [rcx + 0x38], rdi
cmp dword [0x0081bd30], 0
je 0x59ba11
jmp 0x59ba13
jmp 0x59ba25
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rsi, qword [rcx + 0x28]
mov qword [r11 + 8], rsi
jmp 0x59ba25
mov qword [rcx + 0x28], rdx
mov rcx, qword [rsp + 0x170]
mov rdx, qword [rsp + 0x178]
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rdx
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x108]
call sym.regexp_syntax._parser_.push
nop
jmp 0x59c71c
jmp 0x59ba69
jmp 0x59ba69
mov rdx, qword [rsp + 0x108]
test byte [rdx], al
add rdx, 0x40
test byte [rdx], al
jmp 0x59ba7b
jmp 0x59ba7d
mov qword [rsp + 0x470], rdx
mov qword [rsp + 0x478], 0
mov qword [rsp + 0x480], 2
mov qword [rsp + 0x488], 0
movups xmmword [rsp + 0x490], xmm15
movups xmmword [rsp + 0x2c0], xmm15
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x470]
mov rsi, qword [rsp + 0x478]
mov r8, qword [rsp + 0x480]
call sym.regexp_syntax._parser_.parsePerlClassEscape
mov qword [rsp + 0x488], rax
mov qword [rsp + 0x490], rbx
mov qword [rsp + 0x498], rcx
mov qword [rsp + 0x2c0], rdi
mov qword [rsp + 0x2c8], rsi
mov rdx, qword [rsp + 0x488]
mov r9, qword [rsp + 0x490]
mov r10, qword [rsp + 0x498]
mov qword [rsp + 0x4a0], rdx
mov qword [rsp + 0x4a8], r9
mov qword [rsp + 0x4b0], r10
mov rdx, qword [rsp + 0x2c0]
mov r9, qword [rsp + 0x2c8]
mov qword [rsp + 0x320], rdx
mov qword [rsp + 0x328], r9
mov rdx, qword [rsp + 0x4a0]
mov r9, qword [rsp + 0x4a8]
mov r10, qword [rsp + 0x4b0]
mov qword [rsp + 0x440], rdx
mov qword [rsp + 0x448], r9
mov qword [rsp + 0x450], r10
mov rdx, qword [rsp + 0x320]
mov r9, qword [rsp + 0x328]
mov qword [rsp + 0x160], rdx
mov qword [rsp + 0x168], r9
cmp qword [rsp + 0x440], 0
jne 0x59bbc8
jmp 0x59bc50
mov rcx, qword [rsp + 0x108]
test byte [rcx], al
mov rdx, qword [rsp + 0x440]
mov rsi, qword [rsp + 0x448]
mov rdi, qword [rsp + 0x450]
mov qword [rcx + 0x30], rsi
mov qword [rcx + 0x38], rdi
cmp dword [0x0081bd30], 0
je 0x59bbfd
jmp 0x59bc00
jmp 0x59bc12
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rsi, qword [rcx + 0x28]
mov qword [r11 + 8], rsi
jmp 0x59bc12
mov qword [rcx + 0x28], rdx
mov rcx, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x168]
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rdx
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x108]
call sym.regexp_syntax._parser_.push
jmp 0x59c71c
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x108]
call sym.regexp_syntax._parser_.reuse
movups xmmword [rsp + 0x2c0], xmm15
movups xmmword [rsp + 0x2e0], xmm15
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x158]
call sym.regexp_syntax._parser_.parseEscape
mov dword [rsp + 0x68], eax
mov qword [rsp + 0x2c0], rbx
mov qword [rsp + 0x2c8], rcx
mov qword [rsp + 0x2e0], rdi
mov qword [rsp + 0x2e8], rsi
mov ecx, dword [rsp + 0x68]
mov dword [rsp + 0x6c], ecx
mov rcx, qword [rsp + 0x2c0]
mov rdx, qword [rsp + 0x2c8]
mov qword [rsp + 0x310], rcx
mov qword [rsp + 0x318], rdx
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2e8]
mov qword [rsp + 0x300], rcx
mov qword [rsp + 0x308], rdx
mov ecx, dword [rsp + 0x6c]
mov dword [rsp + 0x64], ecx
mov rcx, qword [rsp + 0x310]
mov rdx, qword [rsp + 0x318]
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rdx
mov rcx, qword [rsp + 0x300]
mov rdx, qword [rsp + 0x308]
mov qword [rsp + 0x1f0], rcx
mov qword [rsp + 0x1f8], rdx
test rcx, rcx
jne 0x59bd4f
jmp 0x59bd86
mov qword [rsp + 0x100], 0
nop dword [rax + rax]
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
mov rax, qword [rsp + 0x148]
mov ebx, dword [rsp + 0x64]
call sym.regexp_syntax._parser_.literal
jmp 0x59c71c
jmp 0x59bda0
jmp 0x59bda2
jmp 0x59c3d5
cmp r11b, 0x5e
je 0x59bdb2
jmp 0x59be36
jmp 0x59bdb4
mov rcx, qword [rsp + 0x148]
movzx ecx, word [rcx]
nop
test cx, 0x10
jne 0x59bdc9
jmp 0x59bddd
mov rax, qword [rsp + 0x148]
mov ebx, 9
call sym.regexp_syntax._parser_.op
jmp 0x59bdf1
mov rax, qword [rsp + 0x148]
mov ebx, 7
call sym.regexp_syntax._parser_.op
jmp 0x59bdf1
mov rcx, qword [rsp + 0x158]
mov r11, qword [rsp + 0x150]
cmp rcx, 1
jae 0x59be0c
jmp 0x59c75e
lea r12, [rcx - 1]
mov r13, r12
neg r12
sar r12, 0x3f
and r12d, 1
add r11, r12
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r13
jmp 0x59c71c
cmp r11b, 0x7b
je 0x59be45
nop dword [rax]
jmp 0x59c325
jmp 0x59be47
mov byte [rsp + 0x55], 0x11
mov rdx, qword [rsp + 0x150]
mov rsi, qword [rsp + 0x158]
mov qword [rsp + 0x200], rdx
mov qword [rsp + 0x208], rsi
movups xmmword [rsp + 0x2f0], xmm15
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x158]
call sym.regexp_syntax._parser_.parseRepeat
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0x2f0], rcx
mov qword [rsp + 0x2f8], rdi
mov byte [rsp + 0x5c], sil
mov rdx, qword [rsp + 0xa0]
mov qword [rsp + 0xb0], rdx
mov rdx, qword [rsp + 0x98]
mov qword [rsp + 0xa8], rdx
mov rdx, qword [rsp + 0x2f0]
mov qword [rsp + 0x3b0], rdx
mov qword [rsp + 0x3b8], rdi
movzx edx, byte [rsp + 0x5c]
mov byte [rsp + 0x5f], dl
mov rdx, qword [rsp + 0xb0]
mov qword [rsp + 0x80], rdx
mov rdx, qword [rsp + 0xa8]
mov qword [rsp + 0x88], rdx
mov rdx, qword [rsp + 0x3b0]
mov qword [rsp + 0x220], rdx
mov qword [rsp + 0x228], rdi
movzx edx, byte [rsp + 0x5f]
mov byte [rsp + 0x56], dl
test dl, dl
jne 0x59bf45
nop dword [rax]
jmp 0x59c2cb
cmp qword [rsp + 0x80], 0
setl byte [rsp + 0x5b]
jl 0x59bf57
jmp 0x59bf59
jmp 0x59bf6c
cmp qword [rsp + 0x80], 0x3e8
setg byte [rsp + 0x5b]
jmp 0x59bf6c
movzx r11d, byte [rsp + 0x5b]
mov byte [rsp + 0x5d], r11b
test r11b, r11b
jne 0x59bf80
jmp 0x59bf82
jmp 0x59bf95
cmp qword [rsp + 0x88], 0x3e8
setg byte [rsp + 0x5d]
jmp 0x59bf95
movzx r11d, byte [rsp + 0x5d]
mov byte [rsp + 0x5c], r11b
test r11b, r11b
jne 0x59bfa7
jmp 0x59bfa9
jmp 0x59bfe2
cmp qword [rsp + 0x88], 0
setge byte [rsp + 0x5a]
jge 0x59bfbb
jmp 0x59bfd2
mov r11, qword [rsp + 0x80]
cmp qword [rsp + 0x88], r11
setl byte [rsp + 0x5a]
jmp 0x59bfd4
jmp 0x59bfd4
movzx r11d, byte [rsp + 0x5a]
mov byte [rsp + 0x5c], r11b
nop
jmp 0x59bfe2
cmp byte [rsp + 0x5c], 0
jne 0x59bfee
jmp 0x59c13f
mov rcx, qword [rsp + 0x208]
mov qword [rsp + 0x98], rcx
mov rbx, qword [rsp + 0x228]
mov qword [rsp + 0xa0], rbx
sub rcx, rbx
mov qword [rsp + 0x90], rcx
mov rdx, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x200]
cmp rdx, rcx
jae 0x59c033
jmp 0x59c759
jmp 0x59c035
mov qword [rsp + 0x2f0], rbx
mov qword [rsp + 0x2f8], rcx
lea rax, [0x005ec380]
call sym.runtime.newobject
mov qword [rsp + 0x128], rax
mov qword [rax + 8], 0x14
cmp dword [0x0081bd30], 0
je 0x59c06c
jmp 0x59c06e
jmp 0x59c07b
mov rcx, qword [rax]
call sym.runtime.gcWriteBarrier1
mov qword [r11], rcx
jmp 0x59c07b
lea rcx, [0x00605120]
mov qword [rax], rcx
mov rax, qword [rsp + 0x128]
test byte [rax], al
mov rcx, qword [rsp + 0x2f0]
mov rdx, qword [rsp + 0x2f8]
mov qword [rax + 0x18], rdx
cmp dword [0x0081bd30], 0
je 0x59c0ae
jmp 0x59c0b0
jmp 0x59c0c2
call sym.runtime.gcWriteBarrier2
mov qword [r11], rcx
mov rdx, qword [rax + 0x10]
mov qword [r11 + 8], rdx
jmp 0x59c0c2
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x138], rax
lea rcx, [0x006ef620]
mov qword [rsp + 0x290], rcx
mov qword [rsp + 0x298], rax
mov qword [rsp + 0x100], 0
mov rax, qword [rsp + 0x290]
mov rcx, qword [rsp + 0x298]
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rcx
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
movups xmmword [rsp + 0x2f0], xmm15
movups xmmword [rsp + 0x2e0], xmm15
mov rax, qword [rsp + 0x148]
movzx ebx, byte [rsp + 0x55]
mov rcx, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x1b0]
mov r9, qword [rsp + 0x220]
mov rsi, qword [rsp + 0x200]
mov r10, qword [rsp + 0x228]
mov r11, qword [rsp + 0x1b8]
mov r8, qword [rsp + 0x208]
mov qword [rsp], rdx
mov qword [rsp + 8], r11
call sym.regexp_syntax._parser_.repeat
mov qword [rsp + 0x2f0], rax
mov qword [rsp + 0x2f8], rbx
mov qword [rsp + 0x2e0], rcx
mov qword [rsp + 0x2e8], rdi
mov rdx, qword [rsp + 0x2f0]
mov r11, qword [rsp + 0x2f8]
mov qword [rsp + 0x3a0], rdx
mov qword [rsp + 0x3a8], r11
mov rdx, qword [rsp + 0x2e0]
mov r11, qword [rsp + 0x2e8]
mov qword [rsp + 0x390], rdx
mov qword [rsp + 0x398], r11
mov rdx, qword [rsp + 0x3a0]
mov r11, qword [rsp + 0x3a8]
mov qword [rsp + 0x220], rdx
mov qword [rsp + 0x228], r11
mov rdx, qword [rsp + 0x390]
mov r11, qword [rsp + 0x398]
mov qword [rsp + 0x1f0], rdx
mov qword [rsp + 0x1f8], r11
test rdx, rdx
jne 0x59c253
jmp 0x59c286
mov qword [rsp + 0x100], 0
nop
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
mov r11, qword [rsp + 0x200]
mov r12, qword [rsp + 0x208]
mov qword [rsp + 0x190], r11
mov qword [rsp + 0x198], r12
mov r11, qword [rsp + 0x220]
mov r12, qword [rsp + 0x228]
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r12
jmp 0x59c71c
mov rax, qword [rsp + 0x148]
mov ebx, 0x7b
call sym.regexp_syntax._parser_.literal
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x150]
cmp rcx, 1
jae 0x59c2f8
jmp 0x59c74f
lea r11, [rcx - 1]
mov r12, r11
neg r11
sar r11, 0x3f
and r11d, 1
add r11, rdx
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r12
nop dword [rax]
jmp 0x59c71c
cmp r11b, 0x7c
je 0x59c330
jmp 0x59c3cf
jmp 0x59c332
mov rax, qword [rsp + 0x148]
call sym.regexp_syntax._parser_.parseVerticalBar
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rbx
test rax, rax
jne 0x59c356
jmp 0x59c388
mov qword [rsp + 0x100], 0
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
mov rcx, qword [rsp + 0x158]
mov r11, qword [rsp + 0x150]
cmp rcx, 1
jae 0x59c3a5
nop
jmp 0x59c745
lea r12, [rcx - 1]
mov r13, r12
neg r12
sar r12, 0x3f
and r12d, 1
add r11, r12
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r13
jmp 0x59c71c
jmp 0x59c3d1
jmp 0x59c3d3
jmp 0x59c3d5
jmp 0x59c3d7
jmp 0x59c3d9
movups xmmword [rsp + 0x2f0], xmm15
movups xmmword [rsp + 0x2e0], xmm15
mov rax, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x158]
nop dword [rax + rax]
call sym.regexp_syntax.nextRune
mov dword [rsp + 0x68], eax
mov qword [rsp + 0x2f0], rbx
mov qword [rsp + 0x2f8], rcx
mov qword [rsp + 0x2e0], rdi
mov qword [rsp + 0x2e8], rsi
mov ecx, dword [rsp + 0x68]
mov dword [rsp + 0x74], ecx
mov rcx, qword [rsp + 0x2f8]
mov rdx, qword [rsp + 0x2f0]
mov qword [rsp + 0x430], rdx
mov qword [rsp + 0x438], rcx
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2e8]
mov qword [rsp + 0x420], rcx
mov qword [rsp + 0x428], rdx
mov ecx, dword [rsp + 0x74]
mov dword [rsp + 0x64], ecx
mov rcx, qword [rsp + 0x430]
mov rdx, qword [rsp + 0x438]
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rdx
mov rcx, qword [rsp + 0x420]
mov rdx, qword [rsp + 0x428]
mov qword [rsp + 0x1f0], rcx
mov qword [rsp + 0x1f8], rdx
test rcx, rcx
jne 0x59c4c2
nop
jmp 0x59c4f4
mov qword [rsp + 0x100], 0
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
mov rax, qword [rsp + 0x148]
mov ebx, dword [rsp + 0x64]
call sym.regexp_syntax._parser_.literal
jmp 0x59c71c
mov rax, qword [rsp + 0x148]
call sym.regexp_syntax._parser_.concat
mov rax, qword [rsp + 0x148]
nop
call sym.regexp_syntax._parser_.swapVerticalBar
mov byte [rsp + 0x5b], al
test al, al
jne 0x59c52f
jmp 0x59c575
mov rbx, qword [rsp + 0x148]
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x90], rcx
dec rcx
mov qword [rsp + 0xa0], rcx
mov rbx, qword [rsp + 0x148]
mov rdx, qword [rbx + 0x18]
cmp rdx, rcx
jae 0x59c565
nop
jmp 0x59c717
jmp 0x59c567
mov rdx, qword [rsp + 0x148]
mov qword [rdx + 0x10], rcx
jmp 0x59c577
jmp 0x59c577
mov rax, qword [rsp + 0x148]
nop
call sym.regexp_syntax._parser_.alternate
mov rcx, qword [rsp + 0x148]
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x78], rcx
cmp rcx, 1
jne 0x59c5a5
nop dword [rax]
jmp 0x59c69f
lea rax, [0x005ec380]
call sym.runtime.newobject
mov qword [rsp + 0x118], rax
mov qword [rax + 8], 0x11
cmp dword [0x0081bd30], 0
je 0x59c5cc
jmp 0x59c5ce
jmp 0x59c5db
mov rcx, qword [rax]
call sym.runtime.gcWriteBarrier1
mov qword [r11], rcx
jmp 0x59c5db
lea rcx, [0x006040c8]
mov qword [rax], rcx
mov rax, qword [rsp + 0x118]
test byte [rax], al
mov rcx, qword [rsp + 0x500]
mov rdx, qword [rsp + 0x508]
mov qword [rax + 0x18], rdx
cmp dword [0x0081bd30], 0
je 0x59c60e
jmp 0x59c610
jmp 0x59c622
call sym.runtime.gcWriteBarrier2
mov qword [r11], rcx
mov rdx, qword [rax + 0x10]
mov qword [r11 + 8], rdx
jmp 0x59c622
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x138], rax
lea rcx, [0x006ef620]
mov qword [rsp + 0x250], rcx
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x100], 0
mov rax, qword [rsp + 0x250]
mov rcx, qword [rsp + 0x258]
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rcx
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
movups xmmword [rsp + 0x240], xmm15
mov rdx, qword [rsp + 0x148]
mov rcx, qword [rdx + 0x10]
mov rdx, qword [rdx + 8]
test rcx, rcx
ja 0x59c6bf
jmp 0x59c710
mov rax, qword [rdx]
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x240]
mov rcx, qword [rsp + 0x248]
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rcx
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
xor eax, eax
call sym.runtime.panicIndex
call sym.runtime.panicSliceAcap
mov r11, qword [rsp + 0x190]
mov r12, qword [rsp + 0x198]
mov qword [rsp + 0x1b0], r11
mov qword [rsp + 0x1b8], r12
jmp 0x59c73e
nop
jmp 0x59aa36
mov eax, 1
call sym.runtime.panicSliceB
mov eax, 1
call sym.runtime.panicSliceB
call sym.runtime.panicSliceAlen
mov eax, 1
call sym.runtime.panicSliceB
mov eax, 1
call sym.runtime.panicIndex
mov eax, 1
call sym.runtime.panicIndex
mov eax, 2
call sym.runtime.panicSliceB
mov eax, 2
call sym.runtime.panicSliceB
cmp qword [rsp + 0x1a8], 0
jne 0x59c7a5
nop dword [rax + rax]
jmp 0x59c925
movups xmmword [rsp + 0x2c0], xmm15
movups xmmword [rsp + 0x2e0], xmm15
mov rax, qword [rsp + 0x1a0]
mov rbx, qword [rsp + 0x1a8]
call sym.regexp_syntax.nextRune
mov dword [rsp + 0x68], eax
mov qword [rsp + 0x2c0], rbx
mov qword [rsp + 0x2c8], rcx
mov qword [rsp + 0x2e0], rdi
mov qword [rsp + 0x2e8], rsi
mov ecx, dword [rsp + 0x68]
mov dword [rsp + 0x70], ecx
mov rcx, qword [rsp + 0x2c8]
mov rdx, qword [rsp + 0x2c0]
mov qword [rsp + 0x360], rdx
mov qword [rsp + 0x368], rcx
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2e8]
mov qword [rsp + 0x350], rcx
mov qword [rsp + 0x358], rdx
mov ecx, dword [rsp + 0x70]
mov dword [rsp + 0x60], ecx
mov rcx, qword [rsp + 0x360]
mov rdx, qword [rsp + 0x368]
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x188], rdx
mov rcx, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x358]
mov qword [rsp + 0x1d0], rcx
mov qword [rsp + 0x1d8], rdx
test rcx, rcx
jne 0x59c887
jmp 0x59c8e9
mov qword [rsp + 0x270], rcx
mov qword [rsp + 0x278], rdx
mov qword [rsp + 0x100], 0
mov rax, qword [rsp + 0x270]
mov rcx, qword [rsp + 0x278]
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rcx
call sym.runtime.deferreturn
mov rbx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x1f8]
add rsp, 0x4f0
pop rbp
ret
mov rax, qword [rsp + 0x148]
mov ebx, dword [rsp + 0x60]
call sym.regexp_syntax._parser_.literal
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x188]
mov qword [rsp + 0x1a0], rcx
mov qword [rsp + 0x1a8], rdx
jmp 0x59c91c
nop dword [rax]
jmp 0x59c790
jmp 0x59c71c
mov eax, 2
call sym.runtime.panicSliceB
mov ecx, 2
call sym.runtime.panicSliceAlen
mov eax, 2
call sym.runtime.panicSliceB
mov eax, 2
call sym.runtime.panicSliceB
mov eax, 1
call sym.runtime.panicIndex
mov eax, 1
call sym.runtime.panicSliceB
xor eax, eax
call sym.runtime.panicIndex
mov eax, 1
call sym.runtime.panicSliceB
mov eax, 1
nop dword [rax]
call sym.runtime.panicSliceB
mov eax, 1
call sym.runtime.panicSliceB
mov eax, 1
call sym.runtime.panicIndex
mov eax, 1
nop
call sym.runtime.panicSliceB
xor eax, eax
call sym.runtime.panicIndex
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov word [rsp + 0x18], cx
nop dword [rax]
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
movzx ecx, word [rsp + 0x18]
jmp sym.regexp_syntax.parse