Function at 0x642a40
Capabilities:
Check for software breakpoints

Disassembly:
lea r12, [rsp - 0x28]
cmp r12, qword [r14 + 0x10]
jbe 0x642fcd
sub rsp, 0xa8
mov qword [rsp + 0xa0], rbp
lea rbp, [rsp + 0xa0]
mov byte [rsp + 0xb0], al
mov qword [rsp + 0xb8], rbx
mov byte [rsp + 0xd8], r8b
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0x88], rsi
lea rax, [0x006c5060]
mov rbx, rsi
lea rcx, [0x006d91c3]
mov edi, 0xe
call fcn.004129c0
mov rdx, qword [rax]
mov rbx, qword [rax + 8]
mov rcx, qword [rax + 0x10]
nop dword [rax + rax]
cmp rbx, 1
jle 0x642ad2
mov rsi, qword [rdx]
mov rdi, qword [rdx + 8]
jmp 0x642cf3
movzx esi, byte [rsp + 0xb0]
test sil, sil
je 0x642b13
mov rdi, qword [rsp + 0xc8]
cmp rdi, 4
jne 0x642b13
mov rdi, qword [rsp + 0xc0]
cmp dword [rdi], 0x44414548
jne 0x642b13
xor eax, eax
xor ebx, ebx
xor ecx, ecx
mov rbp, qword [rsp + 0xa0]
add rsp, 0xa8
ret
movabs rax, 0xa3d70a3d70a3d70b
mov rdi, qword [rsp + 0xb8]
mov rcx, rdx
imul rdi
add rdx, rdi
sar rdx, 6
mov r8, rdi
sar rdi, 0x3f
sub rdx, rdi
nop dword [rax]
cmp rdx, 1
je 0x642bad
cmp r8, 0xcc
je 0x642b97
cmp r8, 0x130
je 0x642b97
movzx edx, byte [rsp + 0xd8]
test dl, dl
jne 0x642b7c
cmp rbx, 1
jne 0x642b76
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
jmp 0x642c83
xor eax, eax
xor ecx, ecx
jmp 0x642bc3
mov rax, 0xffffffffffffffff
xor ebx, ebx
xor ecx, ecx
mov rbp, qword [rsp + 0xa0]
add rsp, 0xa8
ret
xor eax, eax
xor ebx, ebx
xor ecx, ecx
mov rbp, qword [rsp + 0xa0]
add rsp, 0xa8
ret
xor eax, eax
xor ebx, ebx
xor ecx, ecx
mov rbp, qword [rsp + 0xa0]
add rsp, 0xa8
ret
test rax, rax
je 0x642c03
mov rbx, rax
mov rax, rcx
call fcn.006446e0
test rbx, rbx
je 0x642bef
mov rax, 0xffffffffffffffff
mov rbp, qword [rsp + 0xa0]
add rsp, 0xa8
ret
xor ebx, ebx
xor ecx, ecx
mov rbp, qword [rsp + 0xa0]
add rsp, 0xa8
ret
nop
nop
lea rax, [0x006d91c3]
mov ebx, 0xe
call fcn.00520620
mov rcx, rax
mov rdi, rbx
lea rax, [0x006b52c0]
mov rbx, qword [rsp + 0x88]
call fcn.00413600
movzx ecx, byte [rsp + 0xb0]
test cl, cl
je 0x642c57
mov rax, 0xffffffffffffffff
xor ebx, ebx
xor ecx, ecx
mov rbp, qword [rsp + 0xa0]
add rsp, 0xa8
ret
xor eax, eax
xor ebx, ebx
xor ecx, ecx
mov rbp, qword [rsp + 0xa0]
add rsp, 0xa8
ret
dec rcx
mov rdi, rcx
neg rcx
sar rcx, 0x3f
and ecx, 1
add rdx, rcx
mov rcx, rdi
test rcx, rcx
je 0x642cab
movzx edi, byte [rdx]
cmp dil, 0x20
je 0x642c6d
cmp dil, 9
je 0x642c6d
cmp dil, 0xa
je 0x642c6d
nop dword [rax]
cmp dil, 0xd
je 0x642c6d
jmp 0x642cab
dec rcx
test rcx, rcx
je 0x642cd2
movzx edi, byte [rcx + rdx - 1]
cmp dil, 0x20
je 0x642ca8
nop dword [rax + rax]
cmp dil, 9
je 0x642ca8
cmp dil, 0xa
je 0x642ca8
cmp dil, 0xd
je 0x642ca8
mov rax, rcx
mov rcx, rdx
jmp 0x642bc3
dec rdi
mov r8, rdi
neg rdi
sar rdi, 0x3f
and edi, 1
add rsi, rdi
mov rdi, r8
test rdi, rdi
je 0x642d20
movzx r8d, byte [rsi]
nop dword [rax]
cmp r8b, 0x20
je 0x642cdd
cmp r8b, 9
je 0x642cdd
cmp r8b, 0xa
je 0x642cdd
cmp r8b, 0xd
je 0x642cdd
jmp 0x642d20
dec rdi
nop dword [rax]
test rdi, rdi
je 0x642d46
movzx r8d, byte [rsi + rdi - 1]
cmp r8b, 0x20
je 0x642d1a
cmp r8b, 9
je 0x642d1a
cmp r8b, 0xa
je 0x642d1a
nop dword [rax]
cmp r8b, 0xd
je 0x642d1a
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rcx
lea r8, [rdx + 0x10]
lea r9, [rbx - 1]
mov qword [rsp + 0x60], r9
xor eax, eax
jmp 0x642da0
mov r8, qword [rsp + 0x78]
add r8, 0x10
mov rax, qword [rsp + 0x58]
inc rax
mov r9, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x40]
nop
cmp rax, r9
jge 0x642ddb
mov r10, qword [r8]
mov r11, qword [r8 + 8]
jmp 0x642f08
cmp r11, rdi
jne 0x642f6c
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x78], r8
mov rax, rsi
mov rbx, r10
mov rcx, rdi
call fcn.00402d80
test al, al
jne 0x642d70
jmp 0x642f5d
nop
nop
lea rax, [0x006d91c3]
mov ebx, 0xe
call fcn.00520620
mov rcx, rax
mov rdi, rbx
lea rax, [0x006b52c0]
mov rbx, qword [rsp + 0x88]
call fcn.00413600
nop
nop
lea rax, [0x006d91c3]
mov ebx, 0xe
call fcn.00520620
mov rcx, rax
mov rdi, rbx
lea rax, [0x006b52c0]
mov rbx, qword [rsp + 0x88]
call fcn.004131e0
mov rcx, qword [rax]
mov rdx, qword [rax + 0x10]
mov rbx, qword [rax + 8]
inc rbx
cmp rdx, rbx
jae 0x642e8d
mov qword [rsp + 0x80], rax
mov rax, rcx
mov rcx, rdx
mov edi, 1
lea rsi, [0x00683e20]
call fcn.0044a960
mov rdi, qword [rsp + 0x80]
mov qword [rdi + 0x10], rcx
cmp dword [0x00948810], 0
jne 0x642e82
mov qword [rdi], rax
nop
jmp 0x642e87
call fcn.00465580
mov rcx, rax
mov rax, rdi
mov qword [rax + 8], rbx
lea rdx, [rbx - 1]
shl rdx, 4
mov rsi, qword [rsp + 0x40]
mov qword [rcx + rdx + 8], rsi
lea rdi, [rcx + rdx]
cmp dword [0x00948810], 0
jne 0x642ebb
mov rsi, qword [rsp + 0x68]
mov qword [rcx + rdx], rsi
jmp 0x642ec5
mov rdx, qword [rsp + 0x68]
call fcn.004656a0
lea rax, [0x006c5060]
mov rbx, qword [rsp + 0x88]
lea rcx, [0x006d91c3]
mov edi, 0xe
call fcn.004129c0
mov rdx, qword [rax]
mov rbx, qword [rax + 8]
jmp 0x642ad2
dec r11
mov r12, r11
neg r11
sar r11, 0x3f
and r11d, 1
add r10, r11
mov r11, r12
test r11, r11
je 0x642f31
movzx r12d, byte [r10]
cmp r12b, 0x20
je 0x642ef1
cmp r12b, 9
je 0x642ef1
nop dword [rax]
cmp r12b, 0xa
je 0x642ef1
cmp r12b, 0xd
je 0x642ef1
jmp 0x642f31
dec r11
test r11, r11
je 0x642db1
movzx r12d, byte [r10 + r11 - 1]
cmp r12b, 0x20
je 0x642f2e
cmp r12b, 9
je 0x642f2e
cmp r12b, 0xa
je 0x642f2e
cmp r12b, 0xd
je 0x642f2e
jmp 0x642db1
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x48]
movups xmmword [rsp + 0x90], xmm15
mov rax, rdx
call fcn.0040b060
lea rdx, [0x00681460]
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x98], rax
lea rax, [0x006eac84]
mov ebx, 0x44
lea rcx, [rsp + 0x90]
mov edi, 1
mov rsi, rdi
call fcn.004c7940
mov rcx, rbx
mov rbx, rax
xor eax, eax
mov rbp, qword [rsp + 0xa0]
add rsp, 0xa8
ret
mov byte [rsp + 8], al
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x30], r8b
call fcn.004633c0
movzx eax, byte [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
movzx r8d, byte [rsp + 0x30]
jmp fcn.00642a40