Function at 0x603880
Capabilities:
Check for software breakpoints

Disassembly:
lea r12, [rsp - 0x28]
cmp r12, qword [r14 + 0x10]
jbe 0x603ead
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, [0x00688be0]
mov rbx, rsi
lea rcx, [0x0069ac18]
mov edi, 0xe
call fcn.00412340
mov rdx, qword [rax]
mov rbx, qword [rax + 8]
mov rcx, qword [rax + 0x10]
nop dword [rax + rax]
cmp rbx, 1
jle 0x603912
mov rsi, qword [rdx]
mov rdi, qword [rdx + 8]
jmp 0x603bc0
mov rsi, qword [rsp + 0xc8]
nop word [rax + rax]
cmp rsi, 4
jne 0x6039de
mov rsi, qword [rsp + 0xc0]
cmp dword [rsi], 0x44414548
jne 0x6039de
movzx esi, byte [rsp + 0xb0]
test sil, sil
jne 0x6039c8
test rbx, rbx
je 0x6039c8
cmp rbx, 1
jne 0x603967
mov rsi, qword [rdx]
cmp qword [rdx + 8], 1
nop
jne 0x603967
cmp byte [rsi], 0x30
je 0x6039c8
movups xmmword [rsp + 0x90], xmm15
mov rax, rdx
call fcn.0040ac20
lea rdx, [0x0064dc60]
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x98], rax
lea rax, [0x006aa806]
mov ebx, 0x34
lea rcx, [rsp + 0x90]
mov edi, 1
mov rsi, rdi
call fcn.004b7e00
mov rcx, rbx
mov rbx, rax
xor eax, eax
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
movabs rax, 0xa3d70a3d70a3d70b
mov rsi, qword [rsp + 0xb8]
mov rcx, rdx
imul rsi
add rdx, rsi
sar rdx, 6
mov rdi, rsi
sar rsi, 0x3f
sub rdx, rsi
cmp rdx, 1
je 0x603a74
cmp rdi, 0xcc
je 0x603a5e
cmp rdi, 0x130
je 0x603a5e
movzx edx, byte [rsp + 0xd8]
test dl, dl
jne 0x603a43
cmp rbx, 1
jne 0x603a3d
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
jmp 0x603b4b
xor eax, eax
xor ecx, ecx
jmp 0x603a8a
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 0x603aca
mov rbx, rax
mov rax, rcx
call fcn.00605240
test rbx, rbx
je 0x603ab6
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, [0x0069ac18]
mov ebx, 0xe
call fcn.005c20e0
mov rcx, rax
mov rdi, rbx
lea rax, [0x0067a960]
mov rbx, qword [rsp + 0x88]
call fcn.00412f40
movzx ecx, byte [rsp + 0xb0]
nop
test cl, cl
je 0x603b1f
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 rsi, rcx
neg rcx
sar rcx, 0x3f
and ecx, 1
add rdx, rcx
mov rcx, rsi
test rcx, rcx
je 0x603b71
movzx esi, byte [rdx]
cmp sil, 0x20
je 0x603b35
cmp sil, 9
je 0x603b35
nop
cmp sil, 0xa
je 0x603b35
cmp sil, 0xd
je 0x603b35
jmp 0x603b71
dec rcx
test rcx, rcx
je 0x603b98
movzx esi, byte [rcx + rdx - 1]
nop dword [rax + rax]
cmp sil, 0x20
je 0x603b6e
cmp sil, 9
je 0x603b6e
cmp sil, 0xa
je 0x603b6e
cmp sil, 0xd
je 0x603b6e
mov rax, rcx
mov rcx, rdx
nop
jmp 0x603a8a
dec rdi
mov r8, rdi
neg rdi
sar rdi, 0x3f
and edi, 1
add rsi, rdi
mov rdi, r8
nop dword [rax + rax]
test rdi, rdi
je 0x603beb
movzx r8d, byte [rsi]
cmp r8b, 0x20
je 0x603ba5
cmp r8b, 9
je 0x603ba5
cmp r8b, 0xa
je 0x603ba5
nop dword [rax + rax]
cmp r8b, 0xd
je 0x603ba5
jmp 0x603beb
dec rdi
test rdi, rdi
je 0x603c18
movzx r8d, byte [rsi + rdi - 1]
cmp r8b, 0x20
je 0x603be8
nop dword [rax]
cmp r8b, 9
je 0x603be8
cmp r8b, 0xa
je 0x603be8
cmp r8b, 0xd
je 0x603be8
cmp rbx, 1
jmp 0x603c1c
cmp rbx, 1
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x68], rsi
je 0x603c4b
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x50], rcx
lea r8, [rdx + 0x10]
lea r9, [rbx - 1]
mov qword [rsp + 0x60], r9
xor eax, eax
jmp 0x603d87
nop
nop
lea rax, [0x0069ac18]
mov ebx, 0xe
call fcn.005c20e0
mov rcx, rax
mov rdi, rbx
lea rax, [0x0067a960]
mov rbx, qword [rsp + 0x88]
call fcn.00412f40
nop
nop
lea rax, [0x0069ac18]
mov ebx, 0xe
call fcn.005c20e0
mov rcx, rax
mov rdi, rbx
lea rax, [0x0067a960]
mov rbx, qword [rsp + 0x88]
call fcn.00412b40
mov rcx, qword [rax + 8]
mov rbx, qword [rax]
mov rdi, qword [rax + 0x10]
lea rsi, [rcx + 1]
cmp rdi, rsi
jae 0x603cf5
mov qword [rsp + 0x80], rax
lea rax, [0x00650200]
call fcn.00449400
mov rdi, qword [rsp + 0x80]
mov qword [rdi + 0x10], rcx
cmp dword [0x008e41d0], 0
jne 0x603ce7
mov qword [rdi], rax
jmp 0x603cec
call fcn.00462620
mov rcx, rbx
mov rbx, rax
mov rax, rdi
lea rdx, [rcx + 1]
mov qword [rax + 8], rdx
shl rcx, 4
mov rdx, qword [rsp + 0x40]
mov qword [rbx + rcx + 8], rdx
lea rdi, [rbx + rcx]
cmp dword [0x008e41d0], 0
jne 0x603d23
mov rdx, qword [rsp + 0x68]
mov qword [rbx + rcx], rdx
jmp 0x603d2d
mov rdx, qword [rsp + 0x68]
call fcn.00462740
lea rax, [0x00688be0]
mov rbx, qword [rsp + 0x88]
lea rcx, [0x0069ac18]
mov edi, 0xe
call fcn.00412340
mov rdx, qword [rax]
mov rbx, qword [rax + 8]
mov rcx, qword [rax + 0x10]
jmp 0x603912
mov r10, qword [rsp + 0x78]
lea r8, [r10 + 0x10]
mov rcx, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x40]
mov r9, qword [rsp + 0x60]
mov rax, rdx
mov rdx, qword [rsp + 0x70]
mov r10, qword [r8]
mov r11, qword [r8 + 8]
jmp 0x603de7
cmp r11, rdi
jne 0x603e4c
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x78], r8
mov rax, rsi
mov rbx, r10
mov rcx, rdi
call fcn.004029c0
test al, al
je 0x603e3d
mov rdx, qword [rsp + 0x58]
inc rdx
mov rsi, qword [rsp + 0x60]
cmp rdx, rsi
jl 0x603d5d
jmp 0x603c4b
dec r11
mov r12, r11
neg r11
sar r11, 0x3f
and r11d, 1
add r10, r11
mov r11, r12
test r11, r11
je 0x603e11
movzx r12d, byte [r10]
cmp r12b, 0x20
je 0x603dd0
cmp r12b, 9
je 0x603dd0
nop dword [rax]
cmp r12b, 0xa
je 0x603dd0
cmp r12b, 0xd
je 0x603dd0
jmp 0x603e11
dec r11
test r11, r11
je 0x603d90
movzx r12d, byte [r10 + r11 - 1]
cmp r12b, 0x20
je 0x603e0e
cmp r12b, 9
je 0x603e0e
cmp r12b, 0xa
je 0x603e0e
cmp r12b, 0xd
je 0x603e0e
jmp 0x603d90
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.0040ac20
lea rdx, [0x0064dc60]
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x98], rax
lea rax, [0x006ac3d7]
mov ebx, 0x44
lea rcx, [rsp + 0x90]
mov edi, 1
mov rsi, rdi
call fcn.004b7e00
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.004603e0
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.00603880