Function at 0x14009cb40
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
sub rsp, 0xe8
mov dword [rsp + 0x24], 0xffffffff
mov dword [rsp + 0x58], 0
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x6b8]
mov dword [rsp + 0x5c], eax
mov dword [rsp + 0x4c], 0xffffffff
mov dword [rsp + 0x44], 0xffffffff
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x30], 0
xor eax, eax
test eax, eax
jne 0x14009cbb4
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call fcn.140073e70
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov ecx, dword [rcx + 0x6c4]
cmp dword [rax + 0x6c0], ecx
jb 0x14009cc18
lea r9, str.regexp_compiler_recursion_limit
mov r8d, 0x20f
lea rdx, str.duk_regexp_compiler.c
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call fcn.14002ce20
xor eax, eax
test eax, eax
jne 0x14009cbe8
xor eax, eax
test eax, eax
jne 0x14009cc12
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x6c0]
inc eax
mov rcx, qword [rsp + 0xf0]
mov dword [rcx + 0x6c0], eax
mov rax, qword [rsp + 0xf0]
add rax, 0x680
mov rcx, qword [rsp + 0xf0]
add rcx, 0x10
mov rdx, rax
call fcn.140098530
xor eax, eax
test eax, eax
jne 0x14009cc58
mov dword [rsp + 0x2c], 0xffffffff
mov dword [rsp + 0x28], 0xffffffff
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x6b8]
mov dword [rsp + 0xd4], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x680]
mov dword [rsp + 0x74], eax
cmp dword [rsp + 0x74], 0x16
ja case.default.0x14009ccb5
mov eax, dword [rsp + 0x74]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0x9dbd4]
add rax, rcx
jmp rax
cmp dword [rsp + 0x44], 0
jl 0x14009cd34
xor eax, eax
test eax, eax
jne 0x14009ccbe
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov ecx, dword [rsp + 0x3c]
sub rax, rcx
mov r8d, eax
mov edx, dword [rsp + 0x3c]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c750
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x4c]
mov ecx, dword [rsp + 0x3c]
sub ecx, eax
mov eax, ecx
mov r8d, eax
mov edx, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c750
mov r8d, 7
mov edx, dword [rsp + 0x78]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov eax, dword [rsp + 0x78]
inc eax
mov dword [rsp + 0x4c], eax
mov edx, 6
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x44], eax
mov dword [rsp + 0x30], 0xffffffff
jmp 0x14009dacb
cmp dword [rsp + 0x24], 0
jge 0x14009ce06
mov dword [rsp + 0x9c], 5
mov dword [rsp + 0xa0], 0x259
xor eax, eax
test eax, eax
jne 0x14009cdb6
xor eax, eax
test eax, eax
jne 0x14009cdbc
mov eax, dword [rsp + 0x9c]
shl eax, 0x18
or eax, dword [rsp + 0xa0]
lea r9, str.quantifier_without_preceding_atom
mov r8d, eax
lea rdx, [0x1403336e0]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call fcn.14002cc10
xor eax, eax
test eax, eax
jne 0x14009cda0
xor eax, eax
test eax, eax
jne 0x14009cda0
xor eax, eax
test eax, eax
jne 0x14009ce00
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov ecx, dword [rcx + 0x690]
cmp dword [rax + 0x68c], ecx
jbe 0x14009ce8a
mov dword [rsp + 0xa4], 5
mov dword [rsp + 0xa8], 0x25d
xor eax, eax
test eax, eax
jne 0x14009ce3a
xor eax, eax
test eax, eax
jne 0x14009ce40
mov eax, dword [rsp + 0xa4]
shl eax, 0x18
or eax, dword [rsp + 0xa8]
lea r9, str.quantifier_values_invalid__qmin___qmax_
mov r8d, eax
lea rdx, [0x1403336a0]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call fcn.14002cc10
xor eax, eax
test eax, eax
jne 0x14009ce24
xor eax, eax
test eax, eax
jne 0x14009ce24
xor eax, eax
test eax, eax
jne 0x14009ce84
cmp dword [rsp + 0x58], 0
jl 0x14009d07e
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x68c]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x690]
mov dword [rsp + 0x54], eax
cmp dword [rsp + 0x58], 0
jne 0x14009cede
cmp dword [rsp + 0x50], 1
jbe 0x14009cecf
mov dword [rsp + 0x50], 1
cmp dword [rsp + 0x54], 1
jbe 0x14009cede
mov dword [rsp + 0x54], 1
mov edx, 1
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
movsxd rcx, dword [rsp + 0x24]
sub rax, rcx
mov dword [rsp + 0x7c], eax
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x684], 0
je 0x14009cfea
mov r8d, 0xa
mov edx, dword [rsp + 0x20]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov r8d, dword [rsp + 0x50]
mov edx, dword [rsp + 0x20]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov r8d, dword [rsp + 0x54]
mov edx, dword [rsp + 0x20]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov r8d, dword [rsp + 0x58]
mov edx, dword [rsp + 0x20]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov r8d, dword [rsp + 0x7c]
mov edx, dword [rsp + 0x20]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c750
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
jmp 0x14009d073
mov r8d, 9
mov edx, dword [rsp + 0x20]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov r8d, dword [rsp + 0x50]
mov edx, dword [rsp + 0x20]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov r8d, dword [rsp + 0x54]
mov edx, dword [rsp + 0x20]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov r8d, dword [rsp + 0x7c]
mov edx, dword [rsp + 0x20]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c750
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
xor eax, eax
test eax, eax
jne 0x14009d073
jmp 0x14009d3bb
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x690], 0xffffffff
jne 0x14009d0a6
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x68c]
mov dword [rsp + 0x80], eax
jmp 0x14009d0bb
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x690]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0xac], eax
cmp dword [rsp + 0xac], 0x3e8
jbe 0x14009d106
lea r9, str.quantifier_requires_too_many_atom_copies
mov r8d, 0x2a2
lea rdx, [0x140333648]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call fcn.14002ce20
xor eax, eax
test eax, eax
jne 0x14009d0d6
xor eax, eax
test eax, eax
jne 0x14009d100
xor eax, eax
test eax, eax
jne 0x14009d106
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x6b8]
cmp dword [rsp + 0x5c], eax
je 0x14009d18b
xor eax, eax
test eax, eax
jne 0x14009d120
xor eax, eax
test eax, eax
jne 0x14009d126
mov rax, qword [rsp + 0xf0]
mov ecx, dword [rsp + 0x5c]
mov eax, dword [rax + 0x6b8]
sub eax, ecx
shl eax, 1
mov r8d, eax
mov edx, dword [rsp + 0x24]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov eax, dword [rsp + 0x5c]
lea eax, [rax + rax + 2]
mov r8d, eax
mov edx, dword [rsp + 0x24]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov r8d, listen
mov edx, dword [rsp + 0x24]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
jmp 0x14009d191
xor eax, eax
test eax, eax
jne 0x14009d18b
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
sub eax, dword [rsp + 0x24]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x68c]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x690]
mov dword [rsp + 0x34], eax
cmp dword [rsp + 0x60], 0
jbe 0x14009d218
mov r8d, dword [rsp + 0x38]
mov edx, dword [rsp + 0x24]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c6d0
mov eax, dword [rsp + 0x60]
dec eax
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x34], 0xffffffff
je 0x14009d216
mov eax, dword [rsp + 0x34]
dec eax
mov dword [rsp + 0x34], eax
jmp 0x14009d1de
xor eax, eax
test eax, eax
jne 0x14009d218
cmp dword [rsp + 0x34], 0xffffffff
jne 0x14009d2c6
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x68c], 0
jne 0x14009d273
mov edx, 6
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
mov edx, dword [rsp + 0x38]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c820
mov r8d, dword [rsp + 0x38]
mov edx, dword [rsp + 0x24]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c6d0
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x684], 0
je 0x14009d298
mov edx, 8
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
jmp 0x14009d2aa
mov edx, 7
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
mov eax, dword [rsp + 0x38]
neg eax
dec eax
mov edx, eax
mov rcx, qword [rsp + 0xf0]
call fcn.14009c820
jmp 0x14009d3a5
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x34], 0
jbe 0x14009d3a5
mov r9d, dword [rsp + 0x38]
mov r8d, dword [rsp + 0x24]
mov edx, dword [rsp + 0x40]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c670
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x684], 0
je 0x14009d33b
mov r8d, 7
mov edx, dword [rsp + 0x40]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
jmp 0x14009d352
mov r8d, 8
mov edx, dword [rsp + 0x40]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov ecx, dword [rsp + 0x40]
inc ecx
mov ecx, ecx
sub rax, rcx
mov ecx, dword [rsp + 0x40]
inc ecx
mov r8d, eax
mov edx, ecx
mov rcx, qword [rsp + 0xf0]
call fcn.14009c750
mov eax, dword [rsp + 0x34]
dec eax
mov dword [rsp + 0x34], eax
jmp 0x14009d2eb
mov r8d, dword [rsp + 0x38]
mov edx, dword [rsp + 0x24]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c710
mov dword [rsp + 0x30], 0xffffffff
jmp 0x14009dacb
mov edx, reloc.WS2_32.dll_recv
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
jmp 0x14009dacb
mov edx, reloc.WS2_32.dll_recvfrom
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
jmp 0x14009dacb
mov edx, reloc.WS2_32.dll_select
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
jmp 0x14009dacb
mov edx, reloc.WS2_32.dll_send
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
jmp 0x14009dacb
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x680], 7
jne 0x14009d442
mov dword [rsp + 0x84], reloc.WS2_32.dll_listen
jmp 0x14009d44d
mov dword [rsp + 0x84], reloc.WS2_32.dll_ntohl
mov eax, dword [rsp + 0x84]
mov dword [rsp + 0xb0], eax
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x64], eax
lea r8, [rsp + 0x70]
xor edx, edx
mov rcx, qword [rsp + 0xf0]
call fcn.14009cb40
mov edx, 1
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
mov r8d, dword [rsp + 0xb0]
mov edx, dword [rsp + 0x64]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov ecx, dword [rsp + 0x64]
inc ecx
mov ecx, ecx
sub rax, rcx
mov ecx, dword [rsp + 0x64]
inc ecx
mov r8d, eax
mov edx, ecx
mov rcx, qword [rsp + 0xf0]
call fcn.14009c750
mov dword [rsp + 0x30], 0xffffffff
jmp 0x14009dacb
mov dword [rsp + 0x28], 1
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x2c], eax
mov edx, 3
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
jmp 0x14009dacb
mov dword [rsp + 0x28], 1
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x2c], eax
mov edx, 2
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x688]
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 8]
and eax, 2
test eax, eax
je 0x14009d5cf
mov edx, dword [rsp + 0x68]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call fcn.14002e5a0
mov dword [rsp + 0x68], eax
mov edx, dword [rsp + 0x68]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c410
jmp 0x14009dacb
mov dword [rsp + 0x28], 1
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x2c], eax
xor eax, eax
test eax, eax
jne 0x14009d612
xor eax, eax
test eax, eax
jne 0x14009d618
xor eax, eax
test eax, eax
jne 0x14009d61e
xor eax, eax
test eax, eax
jne 0x14009d624
xor eax, eax
test eax, eax
jne 0x14009d62a
xor eax, eax
test eax, eax
jne 0x14009d630
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x680]
and eax, 1
test eax, eax
je 0x14009d658
mov dword [rsp + 0x88], 4
jmp 0x14009d663
mov dword [rsp + 0x88], 5
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0xb4], eax
xor eax, eax
test eax, eax
jne 0x14009d671
xor eax, eax
test eax, eax
jne 0x14009d677
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x680]
sub eax, 0xb
shr eax, 1
mov dword [rsp + 0x8c], eax
xor eax, eax
test eax, eax
jne 0x14009d697
mov eax, dword [rsp + 0x8c]
lea rcx, [0x1402ffd3c]
movzx eax, byte [rcx + rax]
mov ecx, dword [rsp + 0x8c]
lea rdx, [0x1403059a8]
mov r9d, eax
mov r8, qword [rdx + rcx*8]
mov edx, dword [rsp + 0xb4]
mov rcx, qword [rsp + 0xf0]
call fcn.14009caf0
jmp 0x14009dacb
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x688]
mov dword [rsp + 0x6c], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x6bc]
cmp dword [rsp + 0x6c], eax
jbe 0x14009d715
mov rax, qword [rsp + 0xf0]
mov ecx, dword [rsp + 0x6c]
mov dword [rax + 0x6bc], ecx
mov dword [rsp + 0x28], 0xffffffff
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x2c], eax
mov edx, reloc.WS2_32.dll_ntohs
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
mov edx, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c410
jmp 0x14009dacb
mov dword [rsp + 0x28], 0xffffffff
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x2c], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x6b8]
inc eax
mov dword [rsp + 0x90], eax
mov rax, qword [rsp + 0xf0]
mov ecx, dword [rsp + 0x90]
mov dword [rax + 0x6b8], ecx
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x94], eax
mov edx, listen
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
mov eax, dword [rsp + 0x94]
add eax, eax
mov edx, eax
mov rcx, qword [rsp + 0xf0]
call fcn.14009c410
lea r8, [rsp + 0x70]
xor edx, edx
mov rcx, qword [rsp + 0xf0]
call fcn.14009cb40
mov edx, listen
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
mov eax, dword [rsp + 0x94]
lea eax, [rax + rax + 1]
mov edx, eax
mov rcx, qword [rsp + 0xf0]
call fcn.14009c410
jmp 0x14009dacb
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x2c], eax
lea r8, [rsp + 0x70]
xor edx, edx
mov rcx, qword [rsp + 0xf0]
call fcn.14009cb40
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x28], eax
jmp 0x14009dacb
xor eax, eax
test eax, eax
jne case.0x14009ccb5.20
mov dword [rsp + 0x28], 1
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0x2c], eax
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x680], 0x14
jne 0x14009d8d7
mov dword [rsp + 0x98], 4
jmp 0x14009d8e2
mov dword [rsp + 0x98], 5
mov edx, dword [rsp + 0x98]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c5e0
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov dword [rsp + 0xb8], eax
mov rax, qword [rsp + 0xf0]
mov dword [rax + 0x6c8], 0
mov rax, qword [rsp + 0xf0]
add rax, 0x10
mov r8, qword [rsp + 0xf0]
lea rdx, [0x14009c9a0]
mov rcx, rax
call fcn.140099010
mov rax, qword [rsp + 0xf0]
mov r8d, dword [rax + 0x6c8]
mov edx, dword [rsp + 0xb8]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c390
jmp 0x14009dacb
cmp dword [rsp + 0xf8], 0
je 0x14009d9eb
mov dword [rsp + 0xbc], 5
mov dword [rsp + 0xc0], 0x3aa
xor eax, eax
test eax, eax
jne 0x14009d99b
xor eax, eax
test eax, eax
jne 0x14009d9a1
mov eax, dword [rsp + 0xbc]
shl eax, 0x18
or eax, dword [rsp + 0xc0]
lea r9, str.unexpected_closing_parenthesis
mov r8d, eax
lea rdx, [0x140333610]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call fcn.14002cc10
xor eax, eax
test eax, eax
jne 0x14009d985
xor eax, eax
test eax, eax
jne 0x14009d985
xor eax, eax
test eax, eax
jne 0x14009d9e5
jmp 0x14009db1a
cmp dword [rsp + 0xf8], 0
jne 0x14009da60
mov dword [rsp + 0xc4], 5
mov dword [rsp + 0xc8], 0x3b1
xor eax, eax
test eax, eax
jne 0x14009da10
xor eax, eax
test eax, eax
jne 0x14009da16
mov eax, dword [rsp + 0xc4]
shl eax, 0x18
or eax, dword [rsp + 0xc8]
lea r9, str.unexpected_end_of_pattern
mov r8d, eax
lea rdx, [0x1403335d0]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call fcn.14002cc10
xor eax, eax
test eax, eax
jne 0x14009d9fa
xor eax, eax
test eax, eax
jne 0x14009d9fa
xor eax, eax
test eax, eax
jne 0x14009da5a
jmp 0x14009db1a
mov dword [rsp + 0xcc], 5
mov dword [rsp + 0xd0], 0x3b7
xor eax, eax
test eax, eax
jne 0x14009da7b
xor eax, eax
test eax, eax
jne 0x14009da81
mov eax, dword [rsp + 0xcc]
shl eax, 0x18
or eax, dword [rsp + 0xd0]
lea r9, str.unexpected_token_in_regexp
mov r8d, eax
lea rdx, [0x140333598]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
call fcn.14002cc10
xor eax, eax
test eax, eax
jne case.default.0x14009ccb5
xor eax, eax
test eax, eax
jne case.default.0x14009ccb5
xor eax, eax
test eax, eax
jne 0x14009dac5
cmp dword [rsp + 0x2c], 0
jl 0x14009dafa
cmp dword [rsp + 0x28], 0
jge 0x14009dae3
mov dword [rsp + 0x30], 0xffffffff
jmp 0x14009dafa
cmp dword [rsp + 0x30], 0
jl 0x14009dafa
mov eax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x30]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x28]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0xd4]
mov dword [rsp + 0x5c], eax
jmp 0x14009cc36
cmp dword [rsp + 0x44], 0
jl 0x14009db97
xor eax, eax
test eax, eax
jne 0x14009db21
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x6a0]
mov rax, qword [rax + 0x698]
sub rax, rcx
mov ecx, dword [rsp + 0x48]
sub rax, rcx
mov r8d, eax
mov edx, dword [rsp + 0x48]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c750
mov ecx, dword [rsp + 0x48]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x4c]
mov ecx, dword [rsp + 0x48]
sub ecx, eax
mov eax, ecx
mov r8d, eax
mov edx, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0xf0]
call fcn.14009c750
mov rax, qword [rsp + 0x100]
mov ecx, dword [rsp + 0x30]
mov dword [rax], ecx
xor eax, eax
test eax, eax
jne 0x14009dba5
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x6c0]
dec eax
mov rcx, qword [rsp + 0xf0]
mov dword [rcx + 0x6c0], eax
add rsp, 0xe8
ret