Function at 0x180050340
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov ebx, dword [rsp + 0x30]
mov r15, rdx
mov edx, dword [rsp + 0xa8]
mov r13, r9
mov rdi, rcx
lea eax, [rdx - 0xc]
mov dword [rsp + 0x34], eax
cmp edx, eax
jbe case.0x1800503cf.124
mov rsi, qword [rsp + 0xa0]
mov r10d, 0x80
movzx ebp, byte [rsp + 0xa8]
mov r14d, dword [rsp + 0xa8]
movzx r12d, byte [rsp + 0xa8]
lea eax, [rdx - 0x7b]
lea r9, [0x180000000]
cmp eax, 0x24
ja case.0x1800503cf.133
movzx eax, byte [r9 + rax + 0x50830]
mov ecx, dword [r9 + rax*4 + 0x50800]
add rcx, r9
jmp rcx
cmp qword [r13 + 8], 0
jne 0x1800503ff
mov ecx, 0x8a
nop dword [rax]
mov eax, ecx
sub eax, 0x89
je case.0x1800503cf.124
cmp eax, 1
jne 0x1800503f5
lea ebx, [rax + 0x54]
dec ecx
cmp ecx, 0x88
ja 0x1800503e0
xor ebx, ebx
mov dword [rsp + 0x30], ebx
jmp case.0x1800503cf.133
mov qword [r13], 0
mov qword [r13 + 0x18], 0
jmp case.0x1800503cf.133
mov al, byte [0x40001a2]
mov byte [rsp + 0x30], al
mov ebx, dword [rsp + 0x30]
jmp case.0x1800503cf.133
mov rax, qword [rsi]
mov qword [r13 + 0x28], rax
jmp case.0x1800503cf.133
movzx eax, byte [r13]
mov byte [0x40001a2], al
mov ax, word [0x40001a0]
and ax, r10w
test ax, ax
jne 0x180050457
jmp case.0x1800503cf.133
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r13], xmm0
movups xmmword [r13 + 0x10], xmm0
mov qword [r13 + 0x20], rax
jmp case.0x1800503cf.133
mov rax, qword [r8]
mov qword [r13 + 0x20], rax
jmp case.0x1800503cf.133
mov r10, qword [rsi]
cmp r10, r8
je 0x180050782
mov r13d, 0x11b
nop word [rax + rax]
mov eax, r13d
sub eax, 0x11b
je 0x18005074a
sub eax, 1
je 0x1800504d2
sub eax, 1
je case.0x180050665.6
cmp eax, 1
jne 0x18005074e
mov edx, 0x9e
mov dword [rsp + 0xa8], edx
jmp 0x180050755
movzx r9d, byte [r10 + 1]
mov r11d, r9d
cmp r9d, 0xdb
ja case.0x180050501.8
lea rdx, [0x180000000]
movzx eax, byte [rdx + r9 + 0x50868]
mov ecx, dword [rdx + rax*4 + 0x50858]
add rcx, rdx
jmp rcx
cmp bpl, 0x80
jae case.0x180050501.1
mov edx, 0x84
nop
mov eax, edx
sub eax, 0x84
je 0x180050539
sub eax, 1
je 0x18005052e
cmp eax, 1
jne 0x180050564
mov r13d, 0x11d
jmp 0x18005074e
mov rax, qword [rdi]
mov byte [rax], bpl
inc qword [rdi]
jmp 0x180050564
cmp qword [rdi], r15
jne 0x180050564
mov ecx, 0xff
mov eax, ecx
sub eax, 0xff
je 0x180050557
cmp eax, 1
je case.0x1800503cf.124
jmp 0x18005055a
mov qword [rsi], r10
inc ecx
cmp ecx, 0x101
jb 0x180050543
inc edx
cmp edx, 0x87
jb 0x180050510
mov edx, 0xc9
mov eax, edx
sub eax, 0xc9
je 0x1800505c0
sub eax, 1
je 0x1800505a3
cmp eax, 1
jne 0x1800505d0
mov rax, qword [rdi]
movzx ecx, bpl
and cl, 0x3f
mov r13d, 0x11d
or cl, 0x80
mov byte [rax], cl
inc qword [rdi]
jmp 0x18005074e
movzx eax, bpl
movzx ecx, r9b
or cl, 0xf0
shr al, 6
shl cl, 2
or cl, al
mov rax, qword [rdi]
mov byte [rax], cl
inc qword [rdi]
jmp 0x1800505d0
mov rax, r15
sub rax, qword [rdi]
cmp rax, 2
jl 0x1800507e2
inc edx
cmp edx, 0xcc
jb 0x180050573
mov r8d, 0x22
mov eax, r8d
sub eax, 0x22
je 0x180050626
sub eax, 1
je 0x1800505f4
cmp eax, 1
je 0x180050586
jmp 0x180050636
mov rax, qword [rdi]
movzx ecx, r9b
shr cl, 4
or cl, 0xe0
mov byte [rax], cl
movzx ecx, r9b
inc qword [rdi]
and cl, 0xf
mov rdx, qword [rdi]
or cl, 0xe0
shl cl, 2
movzx eax, bpl
shr al, 6
or cl, al
mov byte [rdx], cl
inc qword [rdi]
jmp 0x180050636
mov rax, r15
sub rax, qword [rdi]
cmp rax, 3
jl 0x1800507e2
inc r8d
cmp r8d, 0x25
jb 0x1800505e0
lea rdx, [0x180000000]
mov r9d, 0x8f
xor r8d, r8d
nop
cmp r8d, 6
ja case.default.0x180050665
mov ecx, dword [rdx + r8*4 + 0x50944]
add rcx, rdx
jmp rcx
add r10, 2
jmp case.default.0x180050665
mov eax, r11d
movzx r14d, bpl
and eax, 3
shr r14d, 6
shl eax, 2
or r14d, eax
inc r14d
jmp case.default.0x180050665
mov rax, r15
sub rax, qword [rdi]
cmp rax, 4
jge case.default.0x180050665
mov ecx, 0xb4
mov eax, ecx
sub eax, 0xb4
je 0x1800506b5
cmp eax, 0x39
je case.0x1800503cf.124
jmp 0x1800506b8
mov qword [rsi], r10
add ecx, 0x39
cmp ecx, 0x126
jb 0x1800506a1
jmp case.default.0x180050665
mov rax, qword [rdi]
mov ecx, r14d
sar ecx, 2
or cl, 0xf0
mov byte [rax], cl
movzx ecx, r14b
inc qword [rdi]
and cl, 3
mov rdx, qword [rdi]
or cl, 0xf8
movzx eax, bpl
shl cl, 4
shr al, 2
and al, 0xf
or cl, al
mov byte [rdx], cl
jmp 0x18005072c
movzx ecx, r12b
and cl, 0x3f
or cl, 0x80
jmp 0x180050727
movzx eax, byte [r10 + 1]
movzx ecx, bpl
movzx r12d, byte [r10]
and cl, 3
or cl, 0xf8
and al, 3
shl cl, 2
or cl, al
movzx eax, r12b
shr al, 6
shl cl, 2
or cl, al
mov rax, qword [rdi]
mov byte [rax], cl
inc qword [rdi]
inc r9d
inc r8d
cmp r9d, 0x96
jae 0x18005074e
lea rdx, [0x180000000]
jmp 0x180050650
movzx ebp, byte [r10]
mov edx, dword [rsp + 0xa8]
inc r13d
cmp r13d, 0x11f
jb 0x1800504a0
mov r8, qword [rsp + 0x90]
add r10, 2
cmp r10, r8
jne 0x180050491
mov r13, qword [rsp + 0x98]
mov qword [rsi], r10
jmp 0x1800507c8
mov rax, qword [rsi]
lea rdx, [rsp + 0x38]
mov qword [r13 + 0x10], rax
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], 0x89
xor ecx, ecx
lea rax, [rax*8]
mov qword [rsp + 0x38], rax
call fcn.180009c00
mov edx, dword [rsp + 0xa8]
mov r8, qword [rsp + 0x90]
mov qword [r13 + 8], rax
mov r10d, 0x80
dec edx
mov dword [rsp + 0xa8], edx
cmp edx, dword [rsp + 0x34]
jbe case.0x1800503cf.124
jmp 0x1800503a8
mov qword [rsi], r10
mov eax, ebx
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret