Function at 0x1400156d2
Capabilities:
Check for software breakpoints

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
xor edi, edi
mov rbp, rcx
mov r13d, edx
mov edx, 0x28
lea rcx, [0x140048020]
call fcn.1400056fe
xor ecx, ecx
mov rsi, rax
call fcn.14001257c
lea rcx, [rsi + 0x10]
mov rdx, rax
call fcn.140014a22
mov rdx, qword [rbp + 0x70]
mov r9d, 0xf4240
mov r8d, 2
mov rcx, qword [rbp]
call fcn.14000f191
test rax, rax
mov rbx, rax
je 0x140015752
mov r15, qword [rax]
test r15, r15
je 0x140015752
lea rdx, [0x14002b4e0]
mov rcx, rax
call fcn.14001479a
test al, al
je 0x14001576b
jmp 0x1400159ca
mov rcx, rbp
call fcn.140014bb6
lea rcx, [0x14002b220]
call fcn.14001500c
jmp 0x1400159ca
test dil, dil
je 0x1400157bf
lea rcx, [rbx + 0x10]
xor eax, eax
xor r12d, r12d
mov qword [rsp + 0x38], rax
lea rdi, [r12 + 1]
cmp r15, r12
jle 0x140015795
cmp byte [rbx + r12 + 0x10], 0x3a
je 0x140015795
mov r12, rdi
jmp 0x14001577e
lea r8, [rsp + 0x38]
mov r9, r12
mov rdx, r15
call fcn.140007aa0
test r12, r12
jne 0x14001591d
lea rcx, [0x14002b2e0]
call fcn.14001500c
jmp 0x14001591d
lea rdx, [0x14002b3d0]
xor r8d, r8d
mov rcx, rbx
call fcn.140007d6f
test rax, rax
mov r12, rax
jg 0x140015819
mov rax, qword [rbx]
lea rcx, [rax + 0x18]
call fcn.1400057f7
lea rdx, [0x14002b3a0]
mov r9, rax
mov rcx, rax
call fcn.1400149f4
mov rdx, rbx
mov rcx, r9
call fcn.140014a1a
lea rdx, [0x14002b370]
mov rcx, r9
call fcn.1400149f4
mov rcx, r9
call fcn.14001500c
lea rdx, [0x14002b350]
mov r8, r12
mov rcx, rbx
call fcn.140007d6f
test rax, rax
mov rdi, rax
jg 0x14001585e
lea r15, [0x14002b330]
mov r8, r12
mov rcx, rbx
mov rdx, r15
call fcn.140007d6f
test rax, rax
mov rdi, rax
jg 0x14001587a
lea rcx, [0x14002b300]
call fcn.14001500c
jmp 0x14001587a
mov r15, qword [rsi]
lea rcx, [0x14002b350]
call fcn.1400057c7
mov qword [rsi], rax
test r15, r15
mov rcx, r15
jne 0x140015890
jmp 0x140015895
mov r14, qword [rsi]
mov rcx, r15
call fcn.1400057c7
mov qword [rsi], rax
test r14, r14
je 0x140015895
mov rcx, r14
call fcn.140014720
add rdi, r12
mov r12, qword [rbx]
xor eax, eax
lea r8, [rbx + rdi]
mov rcx, r12
sub rcx, rdi
cmp rcx, rax
jle 0x1400158c0
mov dl, byte [r8 + rax + 0x10]
lea r9d, [rdx - 9]
cmp r9b, 4
jbe 0x1400158f6
cmp dl, 0x20
je 0x1400158f6
lea rdx, [rdi + rax]
mov r8d, 1
lea rcx, [rsp + 0x20]
call fcn.140014756
mov r15, qword [rsp + 0x20]
sub r12, qword [rsp + 0x28]
sub r12, r15
add r15, rbx
inc r12
mov rcx, r12
call fcn.140005a31
xor ecx, ecx
mov rdx, rax
jmp 0x140015907
inc rax
jmp 0x1400158a7
mov al, byte [r15 + rcx + 0x10]
mov byte [rdx + rcx + 0x10], al
inc rcx
cmp r12, rcx
jg 0x1400158fb
lea rcx, [rsi + 8]
call fcn.140014a22
mov dil, 1
jmp 0x140015711
cmp byte [rbx + r12 + 0x10], 0x3a
je 0x140015931
lea rcx, [0x14002b2e0]
call fcn.14001500c
lea rcx, [rsp + 0x20]
mov rdx, rdi
mov r8d, 1
call fcn.140014756
mov r12, qword [rsp + 0x20]
mov rdi, qword [rbx]
sub rdi, qword [rsp + 0x28]
add rbx, r12
sub rdi, r12
inc rdi
mov rcx, rdi
call fcn.140005a31
mov rcx, rax
xor eax, eax
cmp rdi, rax
jg 0x1400159bd
lea r9, [0x14002b2c0]
mov r8d, 1
mov edx, 1
call fcn.140008459
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsp + 0x38]
mov r8, rax
call fcn.140012653
mov rax, qword [rsi + 0x10]
mov rcx, qword [rax]
call fcn.1400119bf
cmp rax, 0x2710
jle 0x140015915
lea rcx, [0x14002b280]
call fcn.14001500c
jmp 0x140015915
mov dl, byte [rbx + rax + 0x10]
mov byte [rcx + rax + 0x10], dl
inc rax
jmp 0x140015967
xor ecx, ecx
call fcn.1400130ed
lea rcx, [rsi + 0x20]
mov rdx, rax
call fcn.140014a22
test r13b, r13b
je 0x140015a11
mov rcx, rsi
call fcn.140015089
cmp rax, 0xcc
je 0x140015a11
mov rdx, qword [rsi + 0x20]
lea rcx, [rbp + 0xb8]
call fcn.140014a22
mov rdx, qword [rsi + 0x10]
mov rcx, rbp
mov r8, qword [rsi]
call fcn.140015387
mov rax, rsi
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret