Function at 0x5419c0
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x150]
cmp r12, qword [r14 + 0x10]
jbe 0x542045
push rbp
mov rbp, rsp
sub rsp, 0x1c8
mov byte [rsp + 0x1d8], al
mov byte [rsp + 0x1d9], bl
mov qword [rsp + 0x1e8], rdi
mov qword [rsp + 0x1e0], rcx
lea rax, [0x005601a0]
xor ebx, ebx
mov rcx, rdi
call fcn.004426a0
mov qword [rsp + 0xf8], rax
movups xmmword [rsp + 0x100], xmm15
movups xmmword [rsp + 0x110], xmm15
movups xmmword [rsp + 0x120], xmm15
mov rbx, qword [rsp + 0x1e8]
cmp rbx, 8
jg 0x541a83
movups xmmword [rsp + 0x130], xmm15
lea rdi, [rsp + 0x138]
lea rdi, [rdi - 0x30]
nop word [rax + rax]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00458179
mov rbp, qword [rbp]
lea rdx, [rsp + 0x130]
mov qword [rsp + 0x110], rdx
lea rax, [0x00569d40]
lea rcx, [rsp + 0x100]
call fcn.0040c660
mov qword [rsp + 0xe8], rax
mov rdx, qword [rsp + 0x1e0]
movzx esi, byte [rsp + 0x1d9]
mov rbx, qword [rsp + 0x1e8]
mov rdi, qword [rsp + 0xf8]
xor ecx, ecx
xor r8d, r8d
mov r9, rbx
xor r10d, r10d
jmp 0x541b02
mov r11, qword [rsp + 0x1e0]
movzx r12d, byte [rsp + 0x1d9]
mov r13, qword [rsp + 0x70]
mov r8, rsi
mov rdi, rax
mov r9, rcx
mov r10, rbx
mov rax, qword [rsp + 0xe8]
mov esi, r12d
mov rbx, r13
mov rcx, rdx
mov rdx, r11
test rbx, rbx
jle 0x541ede
mov qword [rsp + 0xf0], rdi
mov qword [rsp + 0xd8], r8
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x60], r10
lea r11, [rbx - 1]
mov qword [rsp + 0x70], r11
mov r12, r11
shl r11, 4
mov rbx, qword [rdx + r11 + 8]
mov qword [rsp + 0x48], rbx
mov r11, qword [rdx + r11]
mov qword [rsp + 0xd0], r11
test sil, sil
je 0x541b5a
xor r13d, r13d
jmp 0x541bd4
mov qword [rsp], r11
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], 0
call fcn.00403b00
xorps xmm15, xmm15
mov r14, qword [0x006b3ec0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x18], 0xffffffffffffffff
setne al
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x1d9]
mov rdi, qword [rsp + 0xf0]
mov r8, qword [rsp + 0xd8]
mov r9, qword [rsp + 0x68]
mov r10, qword [rsp + 0x60]
mov r11, qword [rsp + 0xd0]
mov r12, qword [rsp + 0x70]
mov r13d, eax
mov rax, qword [rsp + 0xe8]
test r13b, r13b
je 0x541c96
nop
movabs r8, 0xf5d3e55ce9631888
mov qword [rsp + 0xa1], r8
movabs r8, 0x728a73a2515a0cf5
mov qword [rsp + 0xa8], r8
movabs r8, 0xc5a6f65cf4159c86
mov qword [rsp + 0xb0], r8
movabs r8, 0x81c41217e43401aa
mov qword [rsp + 0xb8], r8
movabs r8, 0xec49ce0f2f939da3
mov qword [rsp + 0xc0], r8
movabs r8, 0x9bb6c5668a0660ed
mov qword [rsp + 0x7a], r8
movabs r8, 0x17e71dcd23337a9b
mov qword [rsp + 0x81], r8
movabs r8, 0xa4cf843d8235e8e8
mov qword [rsp + 0x89], r8
movabs r8, 0xf5aa7d74c4516dc8
mov qword [rsp + 0x91], r8
movabs r8, 0xa01c802f5cfdf4c2
mov qword [rsp + 0x99], r8
xor ecx, ecx
jmp 0x541fc0
mov rax, r11
lea rcx, [0x0058a3dd]
mov edi, 1
call fcn.0047a900
test rax, rax
jne 0x541cf2
mov rbx, qword [rsp + 0x48]
cmp rbx, 1
jb 0x541f96
lea rdx, [rbx - 1]
mov rsi, rdx
neg rdx
sar rdx, 0x3f
and edx, 1
mov r8, qword [rsp + 0xd0]
lea rax, [r8 + rdx]
lea rcx, [0x0058a3dd]
mov edi, 1
mov rbx, rsi
call fcn.0047a900
inc rax
test rax, rax
jge 0x541da6
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x541d82
mov rbx, qword [rsp + 0x60]
inc rbx
mov rcx, qword [rsp + 0x68]
cmp rcx, rbx
jb 0x541d22
mov rax, qword [rsp + 0xf0]
nop
jmp 0x541d40
mov rax, qword [rsp + 0xf0]
mov edi, 1
lea rsi, [0x005601a0]
call fcn.00442780
mov rdx, qword [rsp + 0x48]
lea r8, [rbx - 1]
shl r8, 4
mov qword [rax + r8 + 8], rdx
cmp dword [0x006b3f20], 0
jne 0x541d62
mov rdx, qword [rsp + 0xd0]
nop
jmp 0x541d7a
call fcn.00457b40
mov rdx, qword [rsp + 0xd0]
mov qword [r11], rdx
mov r9, qword [r8 + rax]
mov qword [r11 + 8], r9
mov qword [rax + r8], rdx
nop
jmp 0x541d94
mov rcx, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov rax, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0xd8]
jmp 0x541acc
mov rdx, qword [rsp + 0x48]
cmp rax, rdx
ja 0x541f8e
movzx esi, byte [rsp + 0x1d8]
nop dword [rax]
test sil, sil
jne 0x541dcf
mov rcx, qword [rsp + 0xd0]
jmp 0x541de5
mov rbx, rax
mov rax, qword [rsp + 0xd0]
call fcn.00479ce0
mov rcx, rax
mov rax, rbx
mov qword [rsp + 0x58], rax
mov qword [rsp + 0xe0], rcx
mov rbx, qword [rsp + 0xe8]
mov rdi, rax
lea rax, [0x00569d40]
call fcn.0040fd00
cmp byte [rax], 0
je 0x541e32
mov rdx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov rax, qword [rsp + 0xf0]
jmp 0x541acc
lea rax, [0x00569d40]
mov rbx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0x58]
call fcn.004104a0
mov byte [rax], 1
mov rbx, qword [rsp + 0x60]
inc rbx
mov rcx, qword [rsp + 0x68]
cmp rcx, rbx
jb 0x541e72
mov rax, qword [rsp + 0xf0]
jmp 0x541e8b
mov rax, qword [rsp + 0xf0]
mov edi, 1
lea rsi, [0x005601a0]
call fcn.00442780
lea rdx, [rbx - 1]
shl rdx, 4
mov r8, qword [rsp + 0x48]
mov qword [rax + rdx + 8], r8
cmp dword [0x006b3f20], 0
jne 0x541eb0
mov r8, qword [rsp + 0xd0]
jmp 0x541ec8
call fcn.00457b40
mov r8, qword [rsp + 0xd0]
mov qword [r11], r8
mov r9, qword [rdx + rax]
mov qword [r11 + 8], r9
mov qword [rax + rdx], r8
mov rdx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0xd8]
jmp 0x541acc
xor eax, eax
jmp 0x541eed
mov qword [rdi + rdx], r12
lea rax, [r10 + 1]
mov r10, rbx
mov rbx, r10
shr r10, 1
cmp rax, r10
jge 0x541f6e
mov rdx, rbx
sub rdx, rax
dec rdx
mov r10, rax
shl rax, 4
mov r11, qword [rdi + rax + 8]
mov r12, qword [rdi + rax]
cmp rbx, rdx
jbe 0x541f83
shl rdx, 4
mov r13, qword [rdx + rdi + 8]
mov r15, qword [rdx + rdi]
mov qword [rdi + rax + 8], r13
cmp dword [0x006b3f20], 0
je 0x541f47
mov rsi, r11
call fcn.00457b40
mov qword [r11], r15
mov r13, qword [rdi + rax]
mov qword [r11 + 8], r13
mov r11, rsi
mov qword [rdi + rax], r15
mov qword [rdi + rdx + 8], r11
cmp dword [0x006b3f20], 0
je 0x541ee2
call fcn.00457b40
mov qword [r11], r12
mov r13, qword [rdx + rdi]
mov qword [r11 + 8], r13
jmp 0x541ee2
mov rax, rdi
mov rdi, rcx
mov rsi, r8
mov rcx, r9
add rsp, 0x1c8
pop rbp
ret
mov rax, rdx
mov rcx, rbx
call fcn.00457ea0
mov rcx, rax
call fcn.00457ee0
mov eax, 1
xor ecx, ecx
nop dword [rax]
call fcn.00457f60
movzx r8d, byte [rsp + rcx + 0xa1]
movzx r11d, byte [rsp + rcx + 0x7a]
xor r11d, r8d
mov byte [rsp + rcx + 0x7a], r11b
inc rcx
nop
cmp rcx, 0x27
jl 0x541fa5
xor eax, eax
lea rbx, [rsp + 0x7a]
mov ecx, 0x27
call fcn.00445b60
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0xc8], rax
nop
lea rax, [0x0056d280]
call fcn.0040bb60
mov rdx, qword [rsp + 0x40]
mov qword [rax + 8], rdx
cmp dword [0x006b3f20], 0
jne 0x54200d
mov rdx, qword [rsp + 0xc8]
jmp 0x54201d
call fcn.00457b20
mov rdx, qword [rsp + 0xc8]
mov qword [r11], rdx
mov qword [rax], rdx
lea rdx, [0x005afc98]
mov rsi, rax
mov rcx, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov rax, qword [rsp + 0xf0]
nop dword [rax]
jmp 0x541acc
mov byte [rsp + 8], al
mov byte [rsp + 9], bl
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], rsi
nop dword [rax]
call fcn.00455c20
movzx eax, byte [rsp + 8]
movzx ebx, byte [rsp + 9]
mov rcx, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
nop
jmp fcn.005419c0