Function at 0x1800557e0
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x850]
sub rsp, 0x950
call fcn.1800486a0
mov r11, qword [0x180092dc8]
cmp dword [r11 + 4], 0
jne 0x180056bcf
mov r8, qword [0x180092db8]
xor r12d, r12d
movabs rax, 0x41821ee8e53ac33
cmp r8, rax
mov byte [rsp + 0x28], 1
movabs rbx, 0x4b873568d1e0b188
cmove r8, r12
mov qword [rsp + 0x20], r12
mov qword [0x180092db8], r8
test r8, r8
je 0x1800558aa
nop dword [rax]
mov edx, r12d
mov rcx, r12
lea rax, [r8 + 0x10]
nop word [rax + rax]
cmp dword [rax], 0xd1d9941e
je 0x180055895
inc rcx
inc edx
add rax, 0x28
cmp rcx, 0x10
jl 0x180055870
mov r8, qword [r8 + 0x280]
test r8, r8
jne 0x180055860
jmp 0x1800558aa
movsxd rax, edx
lea rcx, [rax + rax*4]
mov rax, qword [r8 + rcx*8 + 0x20]
test rax, rax
jne 0x180055e45
mov r8, qword [0x180092db0]
cmp r8, rbx
cmove r8, r12
mov qword [0x180092db0], r8
test r8, r8
je 0x180055907
nop word [rax + rax]
mov edx, r12d
mov rcx, r12
lea rax, [r8 + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x89a17f76
je 0x1800559d6
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x1800558e0
mov r8, qword [r8 + 0x200]
test r8, r8
jne 0x1800558d0
mov rax, qword gs:[0x30]
mov r13, r12
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, r12d
mov edx, r12d
cmp r12w, word [rbx + 0x58]
ja 0x18005596c
lea rax, [rbp - 0x30]
mov r8, r9
lea rcx, [rbp - 0x30]
sub r8, rax
nop
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp r12w, ax
je 0x18005596c
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x180055950
mov r8d, r12d
cmp r12w, word [rbx + 0x58]
jae 0x1800559aa
lea rdx, [rbp + 0x550]
nop dword [rax]
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x18005598e
add cl, 0xe0
mov byte [rdx], cl
test cl, cl
je 0x1800559aa
movzx eax, word [rbx + 0x58]
inc r8d
inc r10d
add r9, 2
inc rdx
cmp r8d, eax
jl 0x180055980
lea rcx, [rbp + 0x550]
mov edx, r10d
call fcn.180063bd0
xor eax, 0x102a2c68
cmp eax, 0x89a17f76
je 0x1800559e7
cmp rbx, rdi
je 0x180055b4e
mov rbx, qword [rbx]
jmp 0x180055930
movsxd rax, edx
shl rax, 5
mov r13, qword [rax + r8 + 0x18]
jmp 0x180055b58
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x180055b4e
cmp byte [0x1800930b0], r12b
jne 0x180055b4e
mov rdi, qword [0x180092db0]
test rdi, rdi
jne 0x180055a83
mov ecx, 0x208
mov byte [0x1800930b0], 1
call fcn.180046860
mov rdi, rax
test rax, rax
je 0x180055a5a
mov esi, 0xf
lea rbx, [rax + 0x18]
nop
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r12d
mov qword [rbx], r12
add rbx, 0x20
dec esi
jns 0x180055a30
mov qword [rdi + 0x200], r12
mov qword [0x180092db0], rdi
jmp 0x180055a64
mov rdi, r12
mov qword [0x180092db0], r12
mov edx, 0xdae1905e
mov ecx, 0x701ac3f9
call fcn.180048dc0
mov byte [0x1800930b0], r12b
mov qword [0x180092da8], rax
jmp 0x180055a9f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x180055a9f
nop
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180055a90
mov edx, r12d
mov rcx, r12
lea rax, [rdi + 0x10]
nop dword [rax]
cmp dword [rax], r12d
je 0x180055b2d
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180055ab0
mov ecx, 0x208
call fcn.180046860
mov rsi, rax
test rax, rax
je 0x180055b0a
mov r12d, 0xf
lea rbx, [rax + 0x18]
xor r14d, r14d
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r14d
mov qword [rbx], r14
add rbx, 0x20
dec r12d
jns 0x180055ae3
xor r12d, r12d
mov qword [rsi + 0x200], r12
jmp 0x180055b0d
mov rsi, r12
lea rdx, [rbp - 0x30]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042540
mov dword [rsi + 0x10], 0x89a17f76
mov qword [rdi + 0x200], rsi
jmp 0x180055b4e
movsxd rbx, edx
lea rdx, [rbp - 0x30]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r13
call fcn.180042540
mov dword [rbx + 0x10], 0x89a17f76
movabs rbx, 0x4b873568d1e0b188
test r13, r13
jne 0x180055e33
mov ecx, 0x89a17f76
call fcn.180048ac0
test al, al
je 0x180055e51
mov r8, qword [0x180092db0]
cmp r8, rbx
cmove r8, r12
mov qword [0x180092db0], r8
test r8, r8
je 0x180055bc7
nop dword [rax]
mov edx, r12d
mov rcx, r12
lea rax, [r8 + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x89a17f76
je 0x180055ca6
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180055ba0
mov r8, qword [r8 + 0x200]
test r8, r8
jne 0x180055b90
mov rax, qword gs:[0x30]
mov r13, r12
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, r12d
mov edx, r12d
cmp r12w, word [rbx + 0x58]
ja 0x180055c3c
lea rax, [rbp + 0x150]
mov r8, r9
lea rcx, [rbp + 0x150]
sub r8, rax
nop word [rax + rax]
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp r12w, ax
je 0x180055c3c
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x180055c20
mov r8d, r12d
cmp r12w, word [rbx + 0x58]
jae 0x180055c7a
lea rdx, [rbp + 0xd0]
nop dword [rax]
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x180055c5e
add cl, 0xe0
mov byte [rdx], cl
test cl, cl
je 0x180055c7a
movzx eax, word [rbx + 0x58]
inc r8d
inc r10d
add r9, 2
inc rdx
cmp r8d, eax
jl 0x180055c50
lea rcx, [rbp + 0xd0]
mov edx, r10d
call fcn.180063bd0
xor eax, 0x102a2c68
cmp eax, 0x89a17f76
je 0x180055cb7
cmp rbx, rdi
je 0x180055e24
mov rbx, qword [rbx]
jmp 0x180055bf0
movsxd rax, edx
shl rax, 5
mov r13, qword [rax + r8 + 0x18]
jmp 0x180055e2e
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x180055e24
cmp byte [0x1800930b0], 0
jne 0x180055e24
mov rdi, qword [0x180092db0]
test rdi, rdi
jne 0x180055d53
mov ecx, 0x208
mov byte [0x1800930b0], 1
call fcn.180046860
mov rdi, rax
test rax, rax
je 0x180055d2a
mov esi, 0xf
lea rbx, [rax + 0x18]
nop
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r12d
mov qword [rbx], r12
add rbx, 0x20
dec esi
jns 0x180055d00
mov qword [rdi + 0x200], r12
mov qword [0x180092db0], rdi
jmp 0x180055d34
mov rdi, r12
mov qword [0x180092db0], r12
mov edx, 0xdae1905e
mov ecx, 0x701ac3f9
call fcn.180048dc0
mov byte [0x1800930b0], 0
mov qword [0x180092da8], rax
jmp 0x180055d6f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x180055d6f
nop
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180055d60
mov edx, r12d
mov rcx, r12
lea rax, [rdi + 0x10]
nop dword [rax]
cmp dword [rax], 0
je 0x180055e00
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180055d80
mov ecx, 0x208
call fcn.180046860
mov rsi, rax
test rax, rax
je 0x180055dda
mov r12d, 0xf
lea rbx, [rax + 0x18]
xor r14d, r14d
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r14d
mov qword [rbx], r14
add rbx, 0x20
dec r12d
jns 0x180055db3
xor r12d, r12d
mov qword [rsi + 0x200], r12
jmp 0x180055ddd
mov rsi, r12
lea rdx, [rbp + 0x150]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042540
mov dword [rsi + 0x10], 0x89a17f76
mov qword [rdi + 0x200], rsi
jmp 0x180055e24
movsxd rbx, edx
lea rdx, [rbp + 0x150]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r13
call fcn.180042540
mov dword [rbx + 0x10], 0x89a17f76
movabs rbx, 0x4b873568d1e0b188
test r13, r13
je 0x180055e51
mov edx, 0xd1d9941e
mov rcx, r13
call fcn.180047fb0
test rax, rax
je 0x180055e51
xor edx, edx
lea ecx, [rdx + 2]
call rax
mov rdx, rax
jmp 0x180055e53
xor edx, edx
lea rcx, [rsp + 0x20]
call fcn.180046cd0
mov rax, qword [rsp + 0x20]
test rax, rax
je 0x180056bfa
cmp rax, 0xffffffffffffffff
je 0x180056bfa
xor ecx, ecx
call fcn.180053f20
lea rcx, [rsp + 0x30]
mov edx, 0x238
mov r15d, eax
mov dword [rbp + 0x880], eax
call fcn.18003f890
lea rcx, [rsp + 0x30]
xor edx, edx
call fcn.18003f3f0
lea rcx, [rsp + 0x30]
mov r14, rax
call fcn.18003f400
movabs rdi, 0x41821ee8e53ac33
mov dword [r14], eax
mov r8, qword [0x180092db8]
cmp r8, rdi
cmove r8, r12
mov qword [0x180092db8], r8
test r8, r8
je 0x180055f2a
nop word [rax + rax]
mov edx, r12d
mov rcx, r12
lea rax, [r8 + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x91bd2c24
je 0x180055f15
inc rcx
inc edx
add rax, 0x28
cmp rcx, 0x10
jl 0x180055ef0
mov r8, qword [r8 + 0x280]
test r8, r8
jne 0x180055ee0
jmp 0x180055f2a
movsxd rax, edx
lea rcx, [rax + rax*4]
mov rax, qword [r8 + rcx*8 + 0x20]
test rax, rax
jne 0x18005651b
mov r8, qword [0x180092db0]
cmp r8, rbx
cmove r8, r12
mov qword [0x180092db0], r8
test r8, r8
je 0x180055f87
nop word [rax + rax]
mov edx, r12d
mov rcx, r12
lea rax, [r8 + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x89a17f76
je 0x180056067
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180055f60
mov r8, qword [r8 + 0x200]
test r8, r8
jne 0x180055f50
mov rax, qword gs:[0x30]
mov r13, r12
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 r10, qword [rbx + 0x60]
mov r11d, r12d
mov edx, r12d
cmp r12w, word [rbx + 0x58]
ja 0x180055ffc
lea rax, [rbp + 0x2d0]
mov r8, r10
lea rcx, [rbp + 0x2d0]
sub r8, rax
nop word [rax + rax]
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp r12w, ax
je 0x180055ffc
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x180055fe0
mov r9d, r12d
cmp r12w, word [rbx + 0x58]
jae 0x18005603b
lea r8, [rbp + 0x6d0]
nop dword [rax]
movzx ecx, byte [r10]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x18005601e
add cl, 0xe0
mov byte [r8], cl
test cl, cl
je 0x18005603b
movzx eax, word [rbx + 0x58]
inc r9d
inc r11d
add r10, 2
inc r8
cmp r9d, eax
jl 0x180056010
lea rcx, [rbp + 0x6d0]
mov edx, r11d
call fcn.180063bd0
xor eax, 0x102a2c68
cmp eax, 0x89a17f76
je 0x180056078
cmp rbx, rdi
je 0x1800561f8
mov rbx, qword [rbx]
jmp 0x180055fb0
movsxd rax, edx
shl rax, 5
mov r13, qword [rax + r8 + 0x18]
jmp 0x180056202
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x1800561f8
cmp byte [0x1800930b0], 0
jne 0x1800561f8
mov rdi, qword [0x180092db0]
test rdi, rdi
jne 0x180056113
mov ecx, 0x208
mov byte [0x1800930b0], 1
call fcn.180046860
mov rdi, rax
test rax, rax
je 0x1800560ea
mov esi, 0xf
lea rbx, [rax + 0x18]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r12d
mov qword [rbx], r12
add rbx, 0x20
dec esi
jns 0x1800560c0
mov qword [rdi + 0x200], r12
mov qword [0x180092db0], rdi
jmp 0x1800560f4
mov rdi, r12
mov qword [0x180092db0], r12
mov edx, 0xdae1905e
mov ecx, 0x701ac3f9
call fcn.180048dc0
mov byte [0x1800930b0], 0
mov qword [0x180092da8], rax
jmp 0x18005612f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x18005612f
nop
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180056120
mov edx, r12d
mov rcx, r12
lea rax, [rdi + 0x10]
nop dword [rax]
cmp dword [rax], 0
je 0x1800561d4
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180056140
mov ecx, 0x208
call fcn.180046860
mov rsi, rax
test rax, rax
je 0x1800561ae
mov r12d, 0xf
lea rbx, [rax + 0x18]
xor r15d, r15d
nop word [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 r12d
jns 0x180056180
mov r15d, dword [rbp + 0x880]
xor r12d, r12d
mov qword [rsi + 0x200], r12
jmp 0x1800561b1
mov rsi, r12
lea rdx, [rbp + 0x2d0]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042540
mov dword [rsi + 0x10], 0x89a17f76
mov qword [rdi + 0x200], rsi
jmp 0x1800561f8
movsxd rbx, edx
lea rdx, [rbp + 0x2d0]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r13
call fcn.180042540
mov dword [rbx + 0x10], 0x89a17f76
movabs rbx, 0x4b873568d1e0b188
test r13, r13
jne 0x1800564fb
mov ecx, 0x89a17f76
call fcn.180048ac0
test al, al
je 0x180056bb4
mov r8, qword [0x180092db0]
cmp r8, rbx
cmove r8, r12
mov qword [0x180092db0], r8
test r8, r8
je 0x180056277
nop word [rax + rax]
mov edx, r12d
mov rcx, r12
lea rax, [r8 + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x89a17f76
je 0x180056357
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180056250
mov r8, qword [r8 + 0x200]
test r8, r8
jne 0x180056240
mov rax, qword gs:[0x30]
mov r13, r12
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 r10, qword [rbx + 0x60]
mov r11d, r12d
mov edx, r12d
cmp r12w, word [rbx + 0x58]
ja 0x1800562ec
lea rax, [rbp + 0x450]
mov r8, r10
lea rcx, [rbp + 0x450]
sub r8, rax
nop word [rax + rax]
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp r12w, ax
je 0x1800562ec
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x1800562d0
mov r9d, r12d
cmp r12w, word [rbx + 0x58]
jae 0x18005632b
lea r8, [rbp + 0x250]
nop dword [rax]
movzx ecx, byte [r10]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x18005630e
add cl, 0xe0
mov byte [r8], cl
test cl, cl
je 0x18005632b
movzx eax, word [rbx + 0x58]
inc r9d
inc r11d
add r10, 2
inc r8
cmp r9d, eax
jl 0x180056300
lea rcx, [rbp + 0x250]
mov edx, r11d
call fcn.180063bd0
xor eax, 0x102a2c68
cmp eax, 0x89a17f76
je 0x180056368
cmp rbx, rdi
je 0x1800564e8
mov rbx, qword [rbx]
jmp 0x1800562a0
movsxd rax, edx
shl rax, 5
mov r13, qword [rax + r8 + 0x18]
jmp 0x1800564f2
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x1800564e8
cmp byte [0x1800930b0], 0
jne 0x1800564e8
mov rdi, qword [0x180092db0]
test rdi, rdi
jne 0x180056403
mov ecx, 0x208
mov byte [0x1800930b0], 1
call fcn.180046860
mov rdi, rax
test rax, rax
je 0x1800563da
mov esi, 0xf
lea rbx, [rax + 0x18]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r12d
mov qword [rbx], r12
add rbx, 0x20
dec esi
jns 0x1800563b0
mov qword [rdi + 0x200], r12
mov qword [0x180092db0], rdi
jmp 0x1800563e4
mov rdi, r12
mov qword [0x180092db0], r12
mov edx, 0xdae1905e
mov ecx, 0x701ac3f9
call fcn.180048dc0
mov byte [0x1800930b0], 0
mov qword [0x180092da8], rax
jmp 0x18005641f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x18005641f
nop
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180056410
mov edx, r12d
mov rcx, r12
lea rax, [rdi + 0x10]
nop dword [rax]
cmp dword [rax], 0
je 0x1800564c4
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180056430
mov ecx, 0x208
call fcn.180046860
mov rsi, rax
test rax, rax
je 0x18005649e
mov r12d, 0xf
lea rbx, [rax + 0x18]
xor r15d, r15d
nop word [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 r12d
jns 0x180056470
mov r15d, dword [rbp + 0x880]
xor r12d, r12d
mov qword [rsi + 0x200], r12
jmp 0x1800564a1
mov rsi, r12
lea rdx, [rbp + 0x450]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042540
mov dword [rsi + 0x10], 0x89a17f76
mov qword [rdi + 0x200], rsi
jmp 0x1800564e8
movsxd rbx, edx
lea rdx, [rbp + 0x450]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r13
call fcn.180042540
mov dword [rbx + 0x10], 0x89a17f76
movabs rbx, 0x4b873568d1e0b188
test r13, r13
je 0x180056bb4
mov edx, 0x91bd2c24
mov rcx, r13
call fcn.180047fb0
movabs rdi, 0x41821ee8e53ac33
test rax, rax
je 0x180056bb4
mov rcx, qword [rsp + 0x20]
mov rdx, r14
call rax
test eax, eax
jne 0x180056536
call fcn.18004ca20
test eax, eax
jne 0x180056bb4
cmp dword [r14 + 8], r15d
je 0x180056b87
mov rdx, qword [0x180092db8]
cmp rdx, rdi
cmove rdx, r12
mov qword [0x180092db8], rdx
test rdx, rdx
je 0x18005659c
nop word [rax + rax]
mov rcx, r12
lea rax, [rdx + 0x10]
cmp dword [rax], 0xac414bd7
je 0x18005658a
inc rcx
add rax, 0x28
cmp rcx, 0x10
jl 0x180056567
mov rdx, qword [rdx + 0x280]
test rdx, rdx
jne 0x180056560
jmp 0x18005659c
lea rax, [rcx + rcx*4]
mov rax, qword [rdx + rax*8 + 0x20]
test rax, rax
jne 0x180056b66
mov rdx, qword [0x180092db0]
cmp rdx, rbx
cmove rdx, r12
mov qword [0x180092db0], rdx
test rdx, rdx
je 0x1800565f5
nop word [rax + rax]
mov rax, r12
lea rcx, [rdx + 0x10]
nop word [rax + rax]
cmp dword [rcx], 0x89a17f76
je 0x1800566c5
inc rax
add rcx, 0x20
cmp rax, 0x10
jl 0x1800565d0
mov rdx, qword [rdx + 0x200]
test rdx, rdx
jne 0x1800565c0
mov rax, qword gs:[0x30]
mov r13, r12
mov rcx, qword [rax + 0x60]
mov rax, qword [rcx + 0x18]
mov rbx, qword [rax + 0x10]
mov rdi, qword [rax + 0x18]
mov r10, qword [rbx + 0x60]
mov r11d, r12d
mov edx, r12d
cmp r12w, word [rbx + 0x58]
ja 0x18005665c
lea rax, [rbp + 0x5d0]
mov r8, r10
lea rcx, [rbp + 0x5d0]
sub r8, rax
nop word [rax + rax]
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp r12w, ax
je 0x18005665c
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x180056640
mov r9d, r12d
cmp r12w, word [rbx + 0x58]
jae 0x18005669b
lea r8, [rsp + 0x50]
nop dword [rax + rax]
movzx ecx, byte [r10]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x18005667e
add cl, 0xe0
mov byte [r8], cl
test cl, cl
je 0x18005669b
movzx eax, word [rbx + 0x58]
inc r9d
inc r11d
add r10, 2
inc r8
cmp r9d, eax
jl 0x180056670
lea rcx, [rsp + 0x50]
mov edx, r11d
call fcn.180063bd0
xor eax, 0x102a2c68
cmp eax, 0x89a17f76
je 0x1800566d3
cmp rbx, rdi
je 0x18005685b
mov rbx, qword [rbx]
jmp 0x180056611
shl rax, 5
mov r13, qword [rax + rdx + 0x18]
jmp 0x180056865
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x18005685b
cmp byte [0x1800930b0], 0
jne 0x18005685b
mov rdi, qword [0x180092db0]
test rdi, rdi
jne 0x180056773
mov ecx, 0x208
mov byte [0x1800930b0], 1
call fcn.180046860
mov rdi, rax
test rax, rax
je 0x18005674a
mov esi, 0xf
lea rbx, [rax + 0x18]
nop dword [rax + rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r12d
mov qword [rbx], r12
add rbx, 0x20
dec esi
jns 0x180056720
mov qword [rdi + 0x200], r12
mov qword [0x180092db0], rdi
jmp 0x180056754
mov rdi, r12
mov qword [0x180092db0], r12
mov edx, 0xdae1905e
mov ecx, 0x701ac3f9
call fcn.180048dc0
mov byte [0x1800930b0], 0
mov qword [0x180092da8], rax
jmp 0x18005678f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x18005678f
nop
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180056780
mov ecx, r12d
mov rbx, r12
lea rax, [rdi + 0x10]
nop dword [rax]
cmp dword [rax], 0
je 0x180056834
inc rbx
inc ecx
add rax, 0x20
cmp rbx, 0x10
jl 0x1800567a0
mov ecx, 0x208
call fcn.180046860
mov rsi, rax
test rax, rax
je 0x18005680e
mov r12d, 0xf
lea rbx, [rax + 0x18]
xor r15d, r15d
nop word [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 r12d
jns 0x1800567e0
mov r15d, dword [rbp + 0x880]
xor r12d, r12d
mov qword [rsi + 0x200], r12
jmp 0x180056811
mov rsi, r12
lea rdx, [rbp + 0x5d0]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042540
mov dword [rsi + 0x10], 0x89a17f76
mov qword [rdi + 0x200], rsi
jmp 0x18005685b
movsxd rcx, ecx
shl rbx, 5
lea rdx, [rbp + 0x5d0]
shl rcx, 5
mov qword [rbx + rdi + 0x18], r13
add rcx, rdi
call fcn.180042540
mov dword [rbx + rdi + 0x10], 0x89a17f76
movabs rbx, 0x4b873568d1e0b188
test r13, r13
jne 0x180056b4a
mov ecx, 0x89a17f76
call fcn.180048ac0
test al, al
je 0x180056bb4
mov rdx, qword [0x180092db0]
cmp rdx, rbx
cmove rdx, r12
mov qword [0x180092db0], rdx
test rdx, rdx
je 0x1800568d5
nop word [rax + rax]
mov rax, r12
lea rcx, [rdx + 0x10]
nop word [rax + rax]
cmp dword [rcx], 0x89a17f76
je 0x1800569a7
inc rax
add rcx, 0x20
cmp rax, 0x10
jl 0x1800568b0
mov rdx, qword [rdx + 0x200]
test rdx, rdx
jne 0x1800568a0
mov rax, qword gs:[0x30]
mov r13, r12
mov rcx, qword [rax + 0x60]
mov rax, qword [rcx + 0x18]
mov rbx, qword [rax + 0x10]
mov rdi, qword [rax + 0x18]
mov r10, qword [rbx + 0x60]
mov r11d, r12d
mov edx, r12d
cmp r12w, word [rbx + 0x58]
ja 0x18005693c
lea rax, [rbp + 0x750]
mov r8, r10
lea rcx, [rbp + 0x750]
sub r8, rax
nop word [rax + rax]
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp r12w, ax
je 0x18005693c
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x180056920
mov r9d, r12d
cmp r12w, word [rbx + 0x58]
jae 0x18005697b
lea r8, [rbp + 0x3d0]
nop dword [rax]
movzx ecx, byte [r10]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x18005695e
add cl, 0xe0
mov byte [r8], cl
test cl, cl
je 0x18005697b
movzx eax, word [rbx + 0x58]
inc r9d
inc r11d
add r10, 2
inc r8
cmp r9d, eax
jl 0x180056950
lea rcx, [rbp + 0x3d0]
mov edx, r11d
call fcn.180063bd0
xor eax, 0x102a2c68
cmp eax, 0x89a17f76
je 0x1800569b5
cmp rbx, rdi
je 0x180056b3b
mov rbx, qword [rbx]
jmp 0x1800568f1
shl rax, 5
mov r13, qword [rax + rdx + 0x18]
jmp 0x180056b45
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x180056b3b
cmp byte [0x1800930b0], 0
jne 0x180056b3b
mov rdi, qword [0x180092db0]
test rdi, rdi
jne 0x180056a53
mov ecx, 0x208
mov byte [0x1800930b0], 1
call fcn.180046860
mov rdi, rax
test rax, rax
je 0x180056a2a
mov esi, 0xf
lea rbx, [rax + 0x18]
nop dword [rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041040
mov dword [rbx - 8], r12d
mov qword [rbx], r12
add rbx, 0x20
dec esi
jns 0x180056a00
mov qword [rdi + 0x200], r12
mov qword [0x180092db0], rdi
jmp 0x180056a34
mov rdi, r12
mov qword [0x180092db0], r12
mov edx, 0xdae1905e
mov ecx, 0x701ac3f9
call fcn.180048dc0
mov byte [0x1800930b0], 0
mov qword [0x180092da8], rax
jmp 0x180056a6f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x180056a6f
nop
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180056a60
mov ecx, r12d
mov rbx, r12
lea rax, [rdi + 0x10]
nop dword [rax]
cmp dword [rax], 0
je 0x180056b14
inc rbx
inc ecx
add rax, 0x20
cmp rbx, 0x10
jl 0x180056a80
mov ecx, 0x208
call fcn.180046860
mov rsi, rax
test rax, rax
je 0x180056aee
mov r12d, 0xf
lea rbx, [rax + 0x18]
xor r15d, r15d
nop word [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 r12d
jns 0x180056ac0
mov r15d, dword [rbp + 0x880]
xor r12d, r12d
mov qword [rsi + 0x200], r12
jmp 0x180056af1
mov rsi, r12
lea rdx, [rbp + 0x750]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042540
mov dword [rsi + 0x10], 0x89a17f76
mov qword [rdi + 0x200], rsi
jmp 0x180056b3b
movsxd rcx, ecx
shl rbx, 5
lea rdx, [rbp + 0x750]
shl rcx, 5
mov qword [rbx + rdi + 0x18], r13
add rcx, rdi
call fcn.180042540
mov dword [rbx + rdi + 0x10], 0x89a17f76
movabs rbx, 0x4b873568d1e0b188
test r13, r13
je 0x180056bb4
mov edx, 0xac414bd7
mov rcx, r13
call fcn.180047fb0
movabs rdi, 0x41821ee8e53ac33
test rax, rax
je 0x180056bb4
mov rcx, qword [rsp + 0x20]
mov rdx, r14
call rax
test eax, eax
jne 0x180056b7d
call fcn.18004ca20
test eax, eax
jne 0x180056bb4
cmp dword [r14 + 8], r15d
jne 0x180056540
mov rcx, qword [0x180092dc8]
mov ebx, dword [r14 + 0x20]
mov dword [rcx + 4], ebx
lea rcx, [rsp + 0x30]
call fcn.18003f3e0
cmp byte [rsp + 0x28], 0
je 0x180056bb0
lea rcx, [rsp + 0x20]
call fcn.180046c90
mov eax, ebx
jmp 0x180056bd9
lea rcx, [rsp + 0x30]
call fcn.18003f3e0
cmp byte [rsp + 0x28], 0
je 0x180056bcf
lea rcx, [rsp + 0x20]
call fcn.180046c90
mov rax, qword [0x180092dc8]
mov eax, dword [rax + 4]
lea r11, [rsp + 0x950]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
cmp byte [rsp + 0x28], 0
je 0x180056c0b
lea rcx, [rsp + 0x20]
call fcn.180046c90
xor eax, eax
jmp 0x180056bd9