Function at 0x180051a7c
Capabilities:
Access peb ldr_data

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x100
mov rax, qword [0x180150340]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x28], rax
xor r15d, r15d
mov dword [rsp + 0x24], r15d
lea rax, [0x180157cd8]
mov qword [rsp + 0x28], rax
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x20]
mov r8, qword [rcx + 0x3f0]
xorps xmm0, xmm0
movups xmmword [rbp + 0x17], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x27], xmm1
shr r8, 1
mov rdx, qword [rcx + 0x80]
lea rcx, [rbp + 0x17]
call fcn.180032d28
nop
xorps xmm0, xmm0
movdqu xmmword [0x180157cd8], xmm0
mov qword [0x180157ce8], r15
lea esi, [r15 + 1]
mov dword [rsp + 0x24], esi
movups xmmword [rbp - 9], xmm0
mov edx, r15d
mov qword [rbp + 7], rdx
lea r12d, [r15 + 7]
mov r8d, r12d
mov qword [rbp + 0xf], r12
mov word [rbp - 9], r15w
lea rdi, [rbp + 0x17]
cmp qword [rbp + 0x2f], r12
cmova rdi, qword [rbp + 0x17]
lea rcx, [rbp + 0x17]
cmova rcx, qword [rbp + 0x17]
mov rax, qword [rbp + 0x27]
lea r14, [rcx + rax*2]
cmp rdi, r14
je 0x180051d67
movzx ebx, word [rdi]
cmp rdx, r8
jae 0x180051b86
lea rax, [rdx + 1]
mov qword [rbp + 7], rax
lea rax, [rbp - 9]
cmp r8, r12
cmova rax, qword [rbp - 9]
mov word [rax + rdx*2], bx
mov word [rax + rdx*2 + 2], r15w
jmp 0x180051b9d
movzx r9d, bx
mov r8b, byte [rsp + 0x20]
mov edx, 1
lea rcx, [rbp - 9]
call fcn.1800520e8
test bx, bx
jne 0x180051d51
lea rax, [rbp - 9]
mov r9, qword [rbp - 9]
mov r10, qword [rbp + 0xf]
cmp r10, r12
cmova rax, r9
mov r11, qword [rbp + 7]
test r11, r11
je 0x180051bf4
mov rcx, r11
mov rdx, rax
mov rbx, r15
cmp word [rax], 0x3d
je 0x180051be4
cmp rcx, 1
je 0x180051be7
dec rcx
add rdx, 2
cmp word [rdx], 0x3d
jne 0x180051bd1
mov rbx, rdx
test rbx, rbx
je 0x180051bf4
sub rbx, rax
sar rbx, 1
jmp 0x180051bf8
or rbx, 0xffffffffffffffff
cmp rbx, 0xffffffffffffffff
je 0x180051d3e
xorps xmm0, xmm0
movups xmmword [rbp - 0x69], xmm0
mov qword [rbp - 0x59], r15
mov qword [rbp - 0x51], r15
mov r8, rbx
cmp r11, rbx
cmovb r8, r11
lea rdx, [rbp - 9]
cmp r10, r12
cmova rdx, r9
lea rcx, [rbp - 0x69]
call fcn.180032d28
or esi, 2
mov dword [rsp + 0x24], esi
inc rbx
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rbp - 0x79], r15
mov qword [rbp - 0x71], r15
mov rax, qword [rbp + 7]
cmp rax, rbx
jb 0x180051dae
sub rax, rbx
or r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
lea rax, [rbp - 9]
cmp qword [rbp + 0xf], r12
cmova rax, qword [rbp - 9]
lea rdx, [rax + rbx*2]
lea rcx, [rsp + 0x30]
call fcn.180032d28
or esi, 4
mov dword [rsp + 0x24], esi
movups xmm1, xmmword [rbp - 0x69]
movaps xmmword [rbp - 0x49], xmm1
movups xmm2, xmmword [rbp - 0x59]
movaps xmmword [rbp - 0x39], xmm2
mov qword [rbp - 0x59], r15
mov qword [rbp - 0x51], r12
mov word [rbp - 0x69], r15w
movups xmm3, xmmword [rsp + 0x30]
movaps xmmword [rbp - 0x29], xmm3
movups xmm0, xmmword [rbp - 0x79]
movaps xmmword [rbp - 0x19], xmm0
mov qword [rbp - 0x79], r15
mov qword [rbp - 0x71], r12
mov word [rsp + 0x30], r15w
mov rdx, qword [0x180157ce0]
cmp rdx, qword [0x180157ce8]
je 0x180051d05
movups xmmword [rdx], xmm1
movups xmmword [rdx + 0x10], xmm2
mov qword [rbp - 0x39], r15
mov qword [rbp - 0x31], r12
mov word [rbp - 0x49], r15w
movups xmmword [rdx + 0x20], xmm3
movups xmmword [rdx + 0x30], xmm0
mov qword [rbp - 0x19], r15
mov qword [rbp - 0x11], r12
mov word [rbp - 0x29], r15w
add qword [0x180157ce0], 0x40
jmp 0x180051d0f
lea r8, [rbp - 0x49]
call fcn.180052240
nop
lea rcx, [rbp - 0x29]
call fcn.180032bc0
lea rcx, [rbp - 0x49]
call fcn.180032bc0
nop
lea rcx, [rsp + 0x30]
call fcn.180032bc0
nop
lea rcx, [rbp - 0x69]
call fcn.180032bc0
mov r10, qword [rbp + 0xf]
mov r9, qword [rbp - 9]
mov qword [rbp + 7], r15
lea rax, [rbp - 9]
cmp r10, r12
cmova rax, r9
mov word [rax], r15w
add rdi, 2
cmp rdi, r14
je 0x180051d67
mov r8, qword [rbp + 0xf]
mov rdx, qword [rbp + 7]
jmp 0x180051b5e
lea rcx, [rbp - 9]
call fcn.180032bc0
nop
lea rcx, [rbp + 0x17]
call fcn.180032bc0
lea rax, [0x180157cd8]
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1800d0660
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.18002f380
int3