Function at 0x18004ddb0
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x320
mov r8, qword [0x180092db8]
xor r15d, r15d
movabs rax, 0x41821ee8e53ac33
cmp r8, rax
mov r14, rcx
cmove r8, r15
mov qword [0x180092db8], r8
test r8, r8
je 0x18004de4a
nop word [rax + rax]
mov edx, r15d
mov rcx, r15
lea rax, [r8 + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x5578fc49
je 0x18004de35
inc rcx
inc edx
add rax, 0x28
cmp rcx, 0x10
jl 0x18004de10
mov r8, qword [r8 + 0x280]
test r8, r8
jne 0x18004de00
jmp 0x18004de4a
movsxd rax, edx
lea rcx, [rax + rax*4]
mov rax, qword [r8 + rcx*8 + 0x20]
test rax, rax
jne 0x18004e417
mov r8, qword [0x180092db0]
movabs rbx, 0x4b873568d1e0b188
mov r13d, 0xf
cmp r8, rbx
cmove r8, r15
mov qword [0x180092db0], r8
test r8, r8
je 0x18004deb7
nop word [rax + rax]
mov edx, r15d
mov rcx, r15
lea rax, [r8 + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x89a17f76
je 0x18004df97
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x18004de90
mov r8, qword [r8 + 0x200]
test r8, r8
jne 0x18004de80
mov rax, qword gs:[0x30]
mov r12, r15
mov rcx, qword [rax + 0x60]
mov rax, qword [rcx + 0x18]
mov rbx, qword [rax + 0x10]
mov rdi, qword [rax + 0x18]
nop word [rax + rax]
mov r9, qword [rbx + 0x60]
mov r10d, r15d
mov edx, r15d
cmp r15w, word [rbx + 0x58]
ja 0x18004df2c
lea rax, [rsp + 0xa0]
mov r8, r9
lea rcx, [rsp + 0xa0]
sub r8, rax
nop word [rax + rax]
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp r15w, ax
je 0x18004df2c
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x18004df10
mov r8d, r15d
cmp r15w, word [rbx + 0x58]
jae 0x18004df6a
lea rdx, [rsp + 0x1a0]
nop
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x18004df4e
add cl, 0xe0
mov byte [rdx], cl
test cl, cl
je 0x18004df6a
movzx eax, word [rbx + 0x58]
inc r8d
inc r10d
add r9, 2
inc rdx
cmp r8d, eax
jl 0x18004df40
lea rcx, [rsp + 0x1a0]
mov edx, r10d
call fcn.180063bd0
xor eax, 0x102a2c68
cmp eax, 0x89a17f76
je 0x18004dfa8
cmp rbx, rdi
je 0x18004e127
mov rbx, qword [rbx]
jmp 0x18004dee0
movsxd rax, edx
shl rax, 5
mov r12, qword [rax + r8 + 0x18]
jmp 0x18004e131
mov r12, qword [rbx + 0x30]
test r12, r12
je 0x18004e127
cmp byte [0x1800930b0], r15b
jne 0x18004e127
mov rdi, qword [0x180092db0]
test rdi, rdi
jne 0x18004e043
mov ecx, 0x208
mov byte [0x1800930b0], 1
call fcn.180046860
mov rdi, rax
test rax, rax
je 0x18004e01a
mov esi, r13d
lea rbx, [rax + 0x18]
nop
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec esi
jns 0x18004dff0
mov qword [rdi + 0x200], r15
mov qword [0x180092db0], rdi
jmp 0x18004e024
mov rdi, r15
mov qword [0x180092db0], r15
mov edx, 0xdae1905e
mov ecx, 0x701ac3f9
call fcn.180048dc0
mov byte [0x1800930b0], r15b
mov qword [0x180092da8], rax
jmp 0x18004e05f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x18004e05f
nop
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x18004e050
mov edx, r15d
mov rcx, r15
lea rax, [rdi + 0x10]
nop dword [rax]
cmp dword [rax], r15d
je 0x18004e102
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x18004e070
mov ecx, 0x208
call fcn.180046860
mov rsi, rax
test rax, rax
je 0x18004e0db
mov qword [rsp + 0x350], rbp
lea rbx, [rax + 0x18]
mov ebp, r13d
nop dword [rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec ebp
jns 0x18004e0b0
mov rbp, qword [rsp + 0x350]
mov qword [rsi + 0x200], r15
jmp 0x18004e0de
mov rsi, r15
lea rdx, [rsp + 0xa0]
mov rcx, rsi
mov qword [rsi + 0x18], r12
call fcn.180042540
mov dword [rsi + 0x10], 0x89a17f76
mov qword [rdi + 0x200], rsi
jmp 0x18004e127
movsxd rbx, edx
lea rdx, [rsp + 0xa0]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r12
call fcn.180042540
mov dword [rbx + 0x10], 0x89a17f76
movabs rbx, 0x4b873568d1e0b188
test r12, r12
jne 0x18004e405
mov ecx, 0x89a17f76
call fcn.180048ac0
test al, al
je 0x18004e41e
mov r8, qword [0x180092db0]
cmp r8, rbx
cmove r8, r15
mov qword [0x180092db0], r8
test r8, r8
je 0x18004e1a7
nop word [rax + rax]
mov edx, r15d
mov rcx, r15
lea rax, [r8 + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x89a17f76
je 0x18004e284
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x18004e180
mov r8, qword [r8 + 0x200]
test r8, r8
jne 0x18004e170
mov rax, qword gs:[0x30]
mov r12, r15
mov rcx, qword [rax + 0x60]
mov rax, qword [rcx + 0x18]
mov rbx, qword [rax + 0x10]
mov rdi, qword [rax + 0x18]
nop word [rax + rax]
mov r9, qword [rbx + 0x60]
mov r10d, r15d
mov edx, r15d
cmp r15w, word [rbx + 0x58]
ja 0x18004e21c
lea rax, [rsp + 0x220]
mov r8, r9
lea rcx, [rsp + 0x220]
sub r8, rax
nop word [rax + rax]
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp r15w, ax
je 0x18004e21c
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x18004e200
mov r8d, r15d
cmp r15w, word [rbx + 0x58]
jae 0x18004e25a
lea rdx, [rsp + 0x20]
nop dword [rax + rax]
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x18004e23e
add cl, 0xe0
mov byte [rdx], cl
test cl, cl
je 0x18004e25a
movzx eax, word [rbx + 0x58]
inc r8d
inc r10d
add r9, 2
inc rdx
cmp r8d, eax
jl 0x18004e230
lea rcx, [rsp + 0x20]
mov edx, r10d
call fcn.180063bd0
xor eax, 0x102a2c68
cmp eax, 0x89a17f76
je 0x18004e295
cmp rbx, rdi
je 0x18004e400
mov rbx, qword [rbx]
jmp 0x18004e1d0
movsxd rax, edx
shl rax, 5
mov r12, qword [rax + r8 + 0x18]
jmp 0x18004e400
mov r12, qword [rbx + 0x30]
test r12, r12
je 0x18004e41e
cmp byte [0x1800930b0], r15b
jne 0x18004e400
mov rdi, qword [0x180092db0]
test rdi, rdi
jne 0x18004e333
mov ecx, 0x208
mov byte [0x1800930b0], 1
call fcn.180046860
mov rdi, rax
test rax, rax
je 0x18004e30a
mov esi, r13d
lea rbx, [rax + 0x18]
nop dword [rax + rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec esi
jns 0x18004e2e0
mov qword [rdi + 0x200], r15
mov qword [0x180092db0], rdi
jmp 0x18004e314
mov rdi, r15
mov qword [0x180092db0], r15
mov edx, 0xdae1905e
mov ecx, 0x701ac3f9
call fcn.180048dc0
mov byte [0x1800930b0], r15b
mov qword [0x180092da8], rax
jmp 0x18004e34f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x18004e34f
nop
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x18004e340
mov r8d, r15d
mov rdx, r15
lea rax, [rdi + 0x10]
nop dword [rax]
cmp dword [rax], r15d
je 0x18004e3db
inc rdx
inc r8d
add rax, 0x20
cmp rdx, 0x10
jl 0x18004e360
mov ecx, 0x208
call fcn.180046860
mov rsi, rax
test rax, rax
je 0x18004e3b4
lea rbx, [rax + 0x18]
nop dword [rax + rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec r13d
jns 0x18004e390
mov qword [rsi + 0x200], r15
jmp 0x18004e3b7
mov rsi, r15
lea rdx, [rsp + 0x220]
mov rcx, rsi
mov qword [rsi + 0x18], r12
call fcn.180042540
mov dword [rsi + 0x10], 0x89a17f76
mov qword [rdi + 0x200], rsi
jmp 0x18004e400
movsxd rbx, r8d
lea rdx, [rsp + 0x220]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r12
call fcn.180042540
mov dword [rbx + 0x10], 0x89a17f76
test r12, r12
je 0x18004e41e
mov edx, 0x5578fc49
mov rcx, r12
call fcn.180047fb0
test rax, rax
je 0x18004e41e
mov rcx, r14
call rax
jmp 0x18004e420
xor eax, eax
lea r11, [rsp + 0x320]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret