Function at 0x41c580
Capabilities:
Access peb ldr_data

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x41c8f6
sub rsp, 0x50
mov qword [rsp + 0x48], rbp
lea rbp, [rsp + 0x48]
mov rax, qword [rsp + 0x60]
cmp byte [rax + 0x67], 0
je 0x41c755
nop
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rcx]
mov rbx, qword [rax + 0x18]
mov rsi, rcx
xor edi, edi
jmp 0x41c5d7
mov r8, qword [rdx]
mov rdi, rcx
mov rcx, rdx
mov rdx, r8
test rdx, rdx
je 0x41c5fc
mov rcx, qword [rdx + 0x18]
cmp rcx, rbx
jae 0x41c5ea
mov rcx, rdx
jmp 0x41c5cb
jbe 0x41c8dc
lea rdi, [rdx + 8]
mov rcx, rdx
mov rdx, rdi
jmp 0x41c5cb
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rdi
lea rax, [0x0063ce00]
mov qword [rsp], rax
call fcn.00418040
mov rax, qword [rsp + 8]
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rcx + 0x18]
mov qword [rax + 0x18], rdx
mov rdx, qword gs:[0x28]
mov rdx, qword [rdx]
mov rdx, qword [rdx + 0x30]
mov ebx, dword [rdx + 0xf0]
mov esi, dword [rdx + 0xf4]
mov dword [rdx + 0xf0], esi
mov edi, ebx
shl ebx, 0x11
xor edi, ebx
mov ebx, esi
xor esi, edi
shr edi, 7
xor edi, esi
mov esi, ebx
shr ebx, 0x10
xor ebx, edi
mov dword [rdx + 0xf4], ebx
lea edx, [rsi + rbx]
mov dword [rax + 0x30], edx
mov qword [rax + 0x20], rcx
mov rdx, qword [rcx + 0x20]
mov qword [rax + 0x28], rdx
mov qword [rsp], rcx
call fcn.0041c240
mov eax, dword [rsp + 8]
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0x34], eax
mov rax, qword [rsp + 0x30]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x28]
mov qword [rax], rcx
mov rax, rcx
jmp 0x41c6b1
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x10]
test rdx, rdx
jne 0x41c733
xor edx, edx
test dl, dl
jne 0x41c6ad
mov rcx, qword [rsp + 0x58]
jmp 0x41c6d7
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x58]
mov rax, rdx
mov rcx, rbx
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x41c729
mov ebx, dword [rax + 0x30]
cmp dword [rdx + 0x30], ebx
jbe 0x41c729
mov rbx, qword [rax + 0x20]
mov rsi, qword [rax + 0x18]
cmp qword [rbx + 0x18], rsi
jne 0x41c7ed
cmp qword [rdx + 8], rax
je 0x41c719
cmp qword [rdx], rax
jne 0x41c7d4
mov qword [rsp], rcx
mov qword [rsp + 8], rdx
call fcn.0041cc60
jmp 0x41c6c7
mov qword [rsp], rcx
mov qword [rsp + 8], rdx
call fcn.0041cd40
jmp 0x41c6c7
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
mov qword [rsp + 0x38], rcx
mov qword [rsp], rdx
call fcn.0041bf00
movzx edx, byte [rsp + 8]
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
jmp 0x41c6bc
mov rdx, qword [0x00654e98]
test rdx, rdx
jne 0x41c771
xor ecx, ecx
mov rdx, qword [rsp + 0x58]
add qword [rdx + 8], rcx
jmp 0x41c5b7
mov rbx, qword [rax + 0x20]
mov rsi, rdx
shr rdx, 0xd
cmp rbx, rdx
jb 0x41c761
nop
shl rbx, 0xd
mov rdx, qword [rax + 0x18]
add rbx, rdx
cmp rsi, 0x2000
jbe 0x41c7cf
lea rdx, [rdx + rsi]
lea rdx, [rdx - 1]
dec rsi
not rsi
and rdx, rsi
and rsi, rbx
cmp rdx, rsi
jae 0x41c7cb
mov rcx, qword [0x00654e90]
cmp rcx, 0x40
sbb rbx, rbx
sub rsi, rdx
shr rsi, cl
and rsi, rbx
mov rcx, rsi
jmp 0x41c763
xor ecx, ecx
jmp 0x41c763
mov rsi, rbx
jmp 0x41c7aa
lea rax, [0x0054f864]
mov qword [rsp], rax
mov qword [rsp + 8], 0x21
call fcn.0042ef20
mov qword [rsp + 0x18], rsi
call fcn.0042f930
lea rax, [0x0054b686]
mov qword [rsp], rax
mov qword [rsp + 8], 0x13
call fcn.004302e0
mov rax, qword [rsp + 0x40]
mov qword [rsp], rax
call fcn.00430290
lea rax, [0x00548ce0]
mov qword [rsp], rax
mov qword [rsp + 8], 8
call fcn.004302e0
mov rax, qword [rsp + 0x18]
mov qword [rsp], rax
call fcn.0042fff0
call fcn.0042fbd0
call fcn.0042f9c0
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x20], rax
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x10], rcx
call fcn.0042f930
lea rax, [0x0054c53e]
mov qword [rsp], rax
mov qword [rsp + 8], 0x16
call fcn.004302e0
mov rax, qword [rsp + 0x20]
mov qword [rsp], rax
call fcn.00430290
lea rax, [0x0054a5b0]
mov qword [rsp], rax
mov qword [rsp + 8], 0x10
call fcn.004302e0
mov rax, qword [rsp + 0x10]
mov qword [rsp], rax
call fcn.0042fff0
call fcn.0042fbd0
call fcn.0042f9c0
lea rax, [0x005517f9]
mov qword [rsp], rax
mov qword [rsp + 8], 0x2f
call fcn.0042ef20
lea rax, [0x0054ee72]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1f
call fcn.0042ef20
nop
call fcn.00457320
jmp fcn.0041c580