Function at 0x4c8020
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x18]
cmp r12, qword [r14 + 0x10]
jbe 0x4c8413
sub rsp, 0x98
mov qword [rsp + 0x90], rbp
lea rbp, [rsp + 0x90]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xc0], rsi
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0x88], rax
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xc8], r8
shl rsi, 1
mov rax, rsi
call fcn.004c9160
mov qword [rsp + 0x78], rax
mov rbx, qword [rax + 8]
mov qword [rsp + 0x50], rbx
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0x58], rdx
mov rcx, qword [rax]
mov qword [rsp + 0x80], rcx
nop
test rbx, rbx
je 0x4c80d4
shl rbx, 3
mov rax, rcx
call fcn.00462fc0
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0xc0]
nop dword [rax]
test rsi, rsi
jbe 0x4c8408
mov rdi, qword [rsp + 0xb8]
mov r8, qword [rdi]
mov r9, rax
mov rax, r8
mov r8, rdx
mul rax
mov r10, qword [rsp + 0xa8]
cmp r10, 1
jbe 0x4c83fb
mov r11, qword [rsp + 0x88]
mov qword [r11 + 8], rdx
mov qword [r11], rax
mov r12, qword [rsp + 0xc8]
mov eax, 1
jmp 0x4c8183
mov r13, qword [rsp + 0x68]
mov r15, qword [rsp + 0x80]
mov qword [r15 + r13], rax
mov rax, qword [rsp + 0x70]
inc rax
mov r11, qword [rsp + 0x88]
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x58]
mov r12, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xc0]
mov rcx, r15
mov rbx, qword [rsp + 0x50]
mov r9, qword [rsp + 0x78]
cmp rsi, rax
jle 0x4c826e
mov r13, qword [rdi + rax*8]
mov rdx, rax
mov rax, r13
mov r15, rdx
mul rax
lea r9, [r15 + r15]
lea r9, [r9 + 1]
cmp r10, r9
jbe 0x4c83f0
mov qword [r11 + r9*8], rdx
mov r9, r15
shl r15, 1
nop word [rax + rax]
cmp r10, r15
jbe 0x4c83e5
mov rdx, r9
shl r9, 4
mov qword [r11 + r9], rax
cmp r8, r15
jb 0x4c83d8
nop dword [rax]
cmp rdx, r15
ja 0x4c83cd
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x60], r15
mov rax, rdx
shl rdx, 3
sub r8, rax
mov rsi, r8
neg r8
sar r8, 0x3f
and rdx, r8
add rdx, rcx
mov qword [rsp], rdx
sub r15, rax
mov qword [rsp + 8], r15
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x30], r13
call fcn.004d4340
xorps xmm15, xmm15
mov r14, qword [0x006c4730]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x60]
nop dword [rax]
cmp rcx, rdx
ja 0x4c8130
jmp 0x4c83c5
lea rdi, [rsi + rsi]
lea rdi, [rdi - 1]
cmp r8, rdi
jb 0x4c83b5
nop
cmp rdi, 1
jb 0x4c83a9
mov qword [rsp + 0x70], rdi
lea rax, [r8 - 1]
mov rdx, rax
neg rax
sar rax, 0x3f
and eax, 8
add rax, rcx
mov qword [rsp], rax
lea rbx, [rsi + rsi]
lea rbx, [rbx - 2]
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], 1
call fcn.004d41a0
xorps xmm15, xmm15
mov r14, qword [0x006c4730]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x70]
nop word [rax + rax]
cmp rcx, rdx
jbe 0x4c83a1
mov rbx, qword [rsp + 0x80]
mov qword [rbx + rdx*8], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp], rax
mov rdx, qword [rsp + 0xa8]
mov qword [rsp + 8], rdx
mov rsi, qword [rsp + 0xb0]
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rcx
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x40], rax
nop
call fcn.004d3f20
xorps xmm15, xmm15
mov r14, qword [0x006c4730]
mov r14, qword gs:[r14]
mov r14, qword [r14]
nop
lea rax, [0x00670e40]
lea rbx, [0x00555b80]
mov rcx, qword [rsp + 0x78]
call fcn.0046a920
mov rbp, qword [rsp + 0x90]
add rsp, 0x98
nop
ret
mov rax, rdx
call fcn.00462920
mov eax, 1
xor ecx, ecx
call fcn.004629e0
mov rcx, rdi
mov rdx, r8
nop dword [rax + rax]
call fcn.004629a0
mov rax, rdx
call fcn.00462920
mov rax, rdx
mov rcx, r15
call fcn.004629e0
mov rcx, r15
mov rdx, r8
nop
call fcn.004629a0
mov rax, r15
mov rcx, r10
call fcn.00462920
mov rax, r9
mov rcx, r10
call fcn.00462920
mov eax, 1
mov rcx, r10
call fcn.00462920
xor eax, eax
mov rcx, rax
call fcn.00462920
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
call fcn.004602c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
jmp fcn.004c8020