Function at 0x180053150
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x850]
sub rsp, 0x950
xor esi, esi
mov qword [rsp + 0x948], r15
mov dword [rbp + 0x8a0], r8d
mov r15d, r8d
mov r14, rdx
movabs rbx, 0xdbf06daf303fac65
lea r12d, [rsi + 0xf]
movabs rdi, 0xd79a16697bb981ec
test rdx, rdx
jne 0x1800537b6
mov rdx, qword [0x180096dc0]
cmp rdx, rbx
cmove rdx, rsi
mov qword [0x180096dc0], rdx
test rdx, rdx
je 0x18005320b
mov r8d, esi
mov rcx, rsi
lea rax, [rdx + 0x10]
nop word [rax + rax]
cmp dword [rax], 0xd7f07875
je 0x1800531f6
inc rcx
inc r8d
add rax, 0x28
cmp rcx, 0x10
jl 0x1800531d0
mov rdx, qword [rdx + 0x280]
test rdx, rdx
jne 0x1800531c0
jmp 0x18005320b
movsxd rax, r8d
lea rcx, [rax + rax*4]
mov rax, qword [rdx + rcx*8 + 0x20]
test rax, rax
jne 0x1800537ac
mov r8, qword [0x180096db8]
cmp r8, rdi
cmove r8, rsi
mov qword [0x180096db8], r8
test r8, r8
je 0x180053267
nop word [rax + rax]
mov edx, esi
mov rcx, rsi
lea rax, [r8 + 0x10]
nop dword [rax]
cmp dword [rax], 0x97c92fff
je 0x180053336
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180053240
mov r8, qword [r8 + 0x200]
test r8, r8
jne 0x180053230
mov rax, qword gs:[0x30]
mov r13, rsi
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, esi
mov edx, esi
cmp si, word [rbx + 0x58]
ja 0x1800532cb
lea rax, [rbp - 0x40]
mov r8, r9
lea rcx, [rbp - 0x40]
sub r8, rax
nop dword [rax]
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp si, ax
je 0x1800532cb
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x1800532b0
mov r8d, esi
cmp si, word [rbx + 0x58]
jae 0x18005330a
lea rdx, [rbp + 0x540]
nop dword [rax + rax]
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x1800532ee
add cl, 0xe0
mov byte [rdx], cl
test cl, cl
je 0x18005330a
movzx eax, word [rbx + 0x58]
inc r8d
inc r10d
add r9, 2
inc rdx
cmp r8d, eax
jl 0x1800532e0
lea rcx, [rbp + 0x540]
mov edx, r10d
call fcn.180065760
xor eax, 0xe427ce1
cmp eax, 0x97c92fff
je 0x180053347
cmp rbx, rdi
je 0x1800534bb
mov rbx, qword [rbx]
jmp 0x180053290
movsxd rax, edx
shl rax, 5
mov r13, qword [rax + r8 + 0x18]
jmp 0x1800534c5
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x1800534bb
cmp byte [0x1800970f1], sil
jne 0x1800534bb
mov rdi, qword [0x180096db8]
test rdi, rdi
jne 0x1800533ec
mov ecx, 0x208
mov byte [0x1800970f1], 1
call fcn.1800472c0
mov rdi, rax
test rax, rax
je 0x1800533c3
mov esi, r12d
lea rbx, [rax + 0x18]
xor r15d, r15d
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec esi
jns 0x180053390
mov r15d, dword [rbp + 0x8a0]
xor esi, esi
mov qword [rdi + 0x200], rsi
mov qword [0x180096db8], rdi
jmp 0x1800533cd
mov rdi, rsi
mov qword [0x180096db8], rsi
mov edx, 0xc489c0d7
mov ecx, 0x6e729370
call fcn.180049ad0
mov byte [0x1800970f1], 0
mov qword [0x180096db0], rax
jmp 0x18005340f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x18005340f
nop dword [rax + rax]
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180053400
mov edx, esi
mov rcx, rsi
lea rax, [rdi + 0x10]
cmp dword [rax], 0
je 0x18005349a
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180053418
mov ecx, 0x208
call fcn.1800472c0
mov rsi, rax
test rax, rax
je 0x180053476
lea rbx, [rax + 0x18]
xor r15d, r15d
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec r12d
jns 0x180053445
mov qword [rsi + 0x200], r15
mov r15d, dword [rbp + 0x8a0]
mov r12d, 0xf
jmp 0x180053478
xor esi, esi
lea rdx, [rbp - 0x40]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042fa0
mov dword [rsi + 0x10], 0x97c92fff
mov qword [rdi + 0x200], rsi
xor esi, esi
jmp 0x1800534bb
movsxd rbx, edx
lea rdx, [rbp - 0x40]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r13
call fcn.180042fa0
mov dword [rbx + 0x10], 0x97c92fff
movabs rdi, 0xd79a16697bb981ec
test r13, r13
jne 0x18005379a
mov ecx, 0x97c92fff
call fcn.1800497d0
test al, al
je 0x1800537b3
mov rcx, qword [0x180096db8]
cmp rcx, rdi
cmove rcx, rsi
mov qword [0x180096db8], rcx
test rcx, rcx
je 0x180053538
nop word [rax + rax]
mov r8d, esi
mov rdx, rsi
lea rax, [rcx + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x97c92fff
je 0x180053606
inc rdx
inc r8d
add rax, 0x20
cmp rdx, 0x10
jl 0x180053510
mov rcx, qword [rcx + 0x200]
test rcx, rcx
jne 0x180053500
mov rax, qword gs:[0x30]
mov r13, rsi
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, esi
mov edx, esi
cmp si, word [rbx + 0x58]
ja 0x18005359e
lea rax, [rbp + 0x140]
mov r8, r9
lea rcx, [rbp + 0x140]
sub r8, rax
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp si, ax
je 0x18005359e
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x180053583
mov r8d, esi
cmp si, word [rbx + 0x58]
jae 0x1800535da
lea rdx, [rbp + 0xc0]
nop
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x1800535be
add cl, 0xe0
mov byte [rdx], cl
test cl, cl
je 0x1800535da
movzx eax, word [rbx + 0x58]
inc r8d
inc r10d
add r9, 2
inc rdx
cmp r8d, eax
jl 0x1800535b0
lea rcx, [rbp + 0xc0]
mov edx, r10d
call fcn.180065760
xor eax, 0xe427ce1
cmp eax, 0x97c92fff
je 0x180053617
cmp rbx, rdi
je 0x18005378b
mov rbx, qword [rbx]
jmp 0x180053560
movsxd rax, r8d
shl rax, 5
mov r13, qword [rax + rcx + 0x18]
jmp 0x180053795
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x18005378b
cmp byte [0x1800970f1], 0
jne 0x18005378b
mov rdi, qword [0x180096db8]
test rdi, rdi
jne 0x1800536bc
mov ecx, 0x208
mov byte [0x1800970f1], 1
call fcn.1800472c0
mov rdi, rax
test rax, rax
je 0x180053693
mov esi, r12d
lea rbx, [rax + 0x18]
xor r15d, r15d
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec esi
jns 0x180053660
mov r15d, dword [rbp + 0x8a0]
xor esi, esi
mov qword [rdi + 0x200], rsi
mov qword [0x180096db8], rdi
jmp 0x18005369d
mov rdi, rsi
mov qword [0x180096db8], rsi
mov edx, 0xc489c0d7
mov ecx, 0x6e729370
call fcn.180049ad0
mov byte [0x1800970f1], 0
mov qword [0x180096db0], rax
jmp 0x1800536df
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x1800536df
nop dword [rax + rax]
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x1800536d0
mov edx, esi
mov rcx, rsi
lea rax, [rdi + 0x10]
cmp dword [rax], 0
je 0x180053767
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x1800536e8
mov ecx, 0x208
call fcn.1800472c0
mov rsi, rax
test rax, rax
je 0x180053740
lea rbx, [rax + 0x18]
xor r15d, r15d
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec r12d
jns 0x180053715
mov qword [rsi + 0x200], r15
mov r15d, dword [rbp + 0x8a0]
jmp 0x180053742
xor esi, esi
lea rdx, [rbp + 0x140]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042fa0
mov dword [rsi + 0x10], 0x97c92fff
mov qword [rdi + 0x200], rsi
xor esi, esi
jmp 0x18005378b
movsxd rbx, edx
lea rdx, [rbp + 0x140]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r13
call fcn.180042fa0
mov dword [rbx + 0x10], 0x97c92fff
movabs rdi, 0xd79a16697bb981ec
test r13, r13
je 0x1800537b3
mov edx, 0xd7f07875
mov rcx, r13
call fcn.180048a60
test rax, rax
je 0x1800537b3
call rax
mov r14, rax
jmp 0x1800537b6
mov r14, rsi
mov rdx, qword [0x180096dc0]
movabs rax, 0xdbf06daf303fac65
cmp rdx, rax
cmove rdx, rsi
mov qword [0x180096dc0], rdx
test rdx, rdx
je 0x18005382b
nop word [rax + rax]
mov r8d, esi
mov rcx, rsi
lea rax, [rdx + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x7af893be
je 0x180053816
inc rcx
inc r8d
add rax, 0x28
cmp rcx, 0x10
jl 0x1800537f0
mov rdx, qword [rdx + 0x280]
test rdx, rdx
jne 0x1800537e0
jmp 0x18005382b
movsxd rax, r8d
lea rcx, [rax + rax*4]
mov rax, qword [rdx + rcx*8 + 0x20]
test rax, rax
jne 0x180053e27
mov rcx, qword [0x180096db8]
cmp rcx, rdi
cmove rcx, rsi
mov qword [0x180096db8], rcx
test rcx, rcx
je 0x180053888
nop word [rax + rax]
mov r8d, esi
mov rdx, rsi
lea rax, [rcx + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x2dbfd1dd
je 0x180053956
inc rdx
inc r8d
add rax, 0x20
cmp rdx, 0x10
jl 0x180053860
mov rcx, qword [rcx + 0x200]
test rcx, rcx
jne 0x180053850
mov rax, qword gs:[0x30]
mov r13, rsi
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, esi
mov edx, esi
cmp si, word [rbx + 0x58]
ja 0x1800538ee
lea rax, [rbp + 0x2c0]
mov r8, r9
lea rcx, [rbp + 0x2c0]
sub r8, rax
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp si, ax
je 0x1800538ee
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x1800538d3
mov r8d, esi
cmp si, word [rbx + 0x58]
jae 0x18005392a
lea rdx, [rbp + 0x6c0]
nop
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x18005390e
add cl, 0xe0
mov byte [rdx], cl
test cl, cl
je 0x18005392a
movzx eax, word [rbx + 0x58]
inc r8d
inc r10d
add r9, 2
inc rdx
cmp r8d, eax
jl 0x180053900
lea rcx, [rbp + 0x6c0]
mov edx, r10d
call fcn.180065760
xor eax, 0xe427ce1
cmp eax, 0x2dbfd1dd
je 0x180053967
cmp rbx, rdi
je 0x180053b06
mov rbx, qword [rbx]
jmp 0x1800538b0
movsxd rax, r8d
shl rax, 5
mov r13, qword [rax + rcx + 0x18]
jmp 0x180053b10
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x180053b06
cmp byte [0x1800970f1], 0
jne 0x180053b06
mov rdi, qword [0x180096db8]
test rdi, rdi
jne 0x180053a1c
mov ecx, 0x208
mov byte [0x1800970f1], 1
call fcn.1800472c0
mov rdi, rax
test rax, rax
je 0x1800539f3
mov esi, 0xf
lea rbx, [rax + 0x18]
xor r15d, r15d
nop word [rax + rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec esi
jns 0x1800539c0
mov r15d, dword [rbp + 0x8a0]
xor esi, esi
mov qword [rdi + 0x200], rsi
mov qword [0x180096db8], rdi
jmp 0x1800539fd
mov rdi, rsi
mov qword [0x180096db8], rsi
mov edx, 0xc489c0d7
mov ecx, 0x6e729370
call fcn.180049ad0
mov byte [0x1800970f1], 0
mov qword [0x180096db0], rax
jmp 0x180053a3f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x180053a3f
nop dword [rax + rax]
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180053a30
mov edx, esi
mov rcx, rsi
lea rax, [rdi + 0x10]
nop dword [rax + rax]
cmp dword [rax], 0
je 0x180053ae2
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180053a50
mov ecx, 0x208
call fcn.1800472c0
mov rsi, rax
test rax, rax
je 0x180053abb
mov r12d, 0xf
lea rbx, [rax + 0x18]
xor r15d, r15d
nop word [rax + rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec r12d
jns 0x180053a90
mov qword [rsi + 0x200], r15
mov r15d, dword [rbp + 0x8a0]
jmp 0x180053abd
xor esi, esi
lea rdx, [rbp + 0x2c0]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042fa0
mov dword [rsi + 0x10], 0x2dbfd1dd
mov qword [rdi + 0x200], rsi
xor esi, esi
jmp 0x180053b06
movsxd rbx, edx
lea rdx, [rbp + 0x2c0]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r13
call fcn.180042fa0
mov dword [rbx + 0x10], 0x2dbfd1dd
movabs rdi, 0xd79a16697bb981ec
test r13, r13
jne 0x180053e15
mov ecx, 0x2dbfd1dd
call fcn.1800497d0
test al, al
je 0x180053e38
mov rcx, qword [0x180096db8]
cmp rcx, rdi
cmove rcx, rsi
mov qword [0x180096db8], rcx
test rcx, rcx
je 0x180053b88
nop word [rax + rax]
mov r8d, esi
mov rdx, rsi
lea rax, [rcx + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x2dbfd1dd
je 0x180053c56
inc rdx
inc r8d
add rax, 0x20
cmp rdx, 0x10
jl 0x180053b60
mov rcx, qword [rcx + 0x200]
test rcx, rcx
jne 0x180053b50
mov rax, qword gs:[0x30]
mov r13, rsi
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, esi
mov edx, esi
cmp si, word [rbx + 0x58]
ja 0x180053bee
lea rax, [rbp + 0x440]
mov r8, r9
lea rcx, [rbp + 0x440]
sub r8, rax
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp si, ax
je 0x180053bee
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x180053bd3
mov r8d, esi
cmp si, word [rbx + 0x58]
jae 0x180053c2a
lea rdx, [rbp + 0x240]
nop
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x180053c0e
add cl, 0xe0
mov byte [rdx], cl
test cl, cl
je 0x180053c2a
movzx eax, word [rbx + 0x58]
inc r8d
inc r10d
add r9, 2
inc rdx
cmp r8d, eax
jl 0x180053c00
lea rcx, [rbp + 0x240]
mov edx, r10d
call fcn.180065760
xor eax, 0xe427ce1
cmp eax, 0x2dbfd1dd
je 0x180053c67
cmp rbx, rdi
je 0x180053e06
mov rbx, qword [rbx]
jmp 0x180053bb0
movsxd rax, r8d
shl rax, 5
mov r13, qword [rax + rcx + 0x18]
jmp 0x180053e10
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x180053e06
cmp byte [0x1800970f1], 0
jne 0x180053e06
mov rdi, qword [0x180096db8]
test rdi, rdi
jne 0x180053d1c
mov ecx, 0x208
mov byte [0x1800970f1], 1
call fcn.1800472c0
mov rdi, rax
test rax, rax
je 0x180053cf3
mov esi, 0xf
lea rbx, [rax + 0x18]
xor r15d, r15d
nop word [rax + rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec esi
jns 0x180053cc0
mov r15d, dword [rbp + 0x8a0]
xor esi, esi
mov qword [rdi + 0x200], rsi
mov qword [0x180096db8], rdi
jmp 0x180053cfd
mov rdi, rsi
mov qword [0x180096db8], rsi
mov edx, 0xc489c0d7
mov ecx, 0x6e729370
call fcn.180049ad0
mov byte [0x1800970f1], 0
mov qword [0x180096db0], rax
jmp 0x180053d3f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x180053d3f
nop dword [rax + rax]
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180053d30
mov edx, esi
mov rcx, rsi
lea rax, [rdi + 0x10]
nop dword [rax + rax]
cmp dword [rax], 0
je 0x180053de2
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180053d50
mov ecx, 0x208
call fcn.1800472c0
mov rsi, rax
test rax, rax
je 0x180053dbb
mov r12d, 0xf
lea rbx, [rax + 0x18]
xor r15d, r15d
nop word [rax + rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r15d
mov qword [rbx], r15
add rbx, 0x20
dec r12d
jns 0x180053d90
mov qword [rsi + 0x200], r15
mov r15d, dword [rbp + 0x8a0]
jmp 0x180053dbd
xor esi, esi
lea rdx, [rbp + 0x440]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042fa0
mov dword [rsi + 0x10], 0x2dbfd1dd
mov qword [rdi + 0x200], rsi
xor esi, esi
jmp 0x180053e06
movsxd rbx, edx
lea rdx, [rbp + 0x440]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r13
call fcn.180042fa0
mov dword [rbx + 0x10], 0x2dbfd1dd
movabs rdi, 0xd79a16697bb981ec
test r13, r13
je 0x180053e38
mov edx, 0x7af893be
mov rcx, r13
call fcn.180048a60
test rax, rax
je 0x180053e38
lea rdx, [rbp + 0x898]
mov rcx, r14
call rax
mov r14, rax
jmp 0x180053e3b
mov r14, rsi
mov qword [rbp + 0x8a8], r14
mov r8d, esi
mov dword [rsp + 0x20], esi
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x30], esi
movsxd rax, r15d
cmp r15d, dword [rbp + 0x898]
jge 0x180053e86
lea rbx, [r14 + rax*8]
mov rdx, qword [rbx]
lea rcx, [rsp + 0x20]
call fcn.180044ec0
inc r15d
add rbx, 8
cmp r15d, dword [rbp + 0x898]
jge 0x180053e86
mov r8d, dword [rsp + 0x20]
jmp 0x180053e62
mov rdx, qword [0x180096dc0]
mov r15, qword [rsp + 0x948]
movabs rax, 0xdbf06daf303fac65
cmp rdx, rax
cmove rdx, rsi
mov qword [0x180096dc0], rdx
test rdx, rdx
je 0x180053f0b
nop word [rax + rax]
mov r8d, esi
mov rcx, rsi
lea rax, [rdx + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x304a8b6a
je 0x180053ef6
inc rcx
inc r8d
add rax, 0x28
cmp rcx, 0x10
jl 0x180053ed0
mov rdx, qword [rdx + 0x280]
test rdx, rdx
jne 0x180053ec0
jmp 0x180053f0b
movsxd rax, r8d
lea rcx, [rax + rax*4]
mov rax, qword [rdx + rcx*8 + 0x20]
test rax, rax
jne 0x1800544ef
mov rcx, qword [0x180096db8]
cmp rcx, rdi
cmove rcx, rsi
mov qword [0x180096db8], rcx
test rcx, rcx
je 0x180053f68
nop word [rax + rax]
mov r8d, esi
mov rdx, rsi
lea rax, [rcx + 0x10]
nop word [rax + rax]
cmp dword [rax], 0x97c92fff
je 0x180054034
inc rdx
inc r8d
add rax, 0x20
cmp rdx, 0x10
jl 0x180053f40
mov rcx, qword [rcx + 0x200]
test rcx, rcx
jne 0x180053f30
mov rax, qword gs:[0x30]
mov r13, rsi
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, esi
mov edx, esi
cmp si, word [rbx + 0x58]
ja 0x180053fce
lea rax, [rbp + 0x5c0]
mov r8, r9
lea rcx, [rbp + 0x5c0]
sub r8, rax
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp si, ax
je 0x180053fce
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x180053fb3
mov r8d, esi
cmp si, word [rbx + 0x58]
jae 0x18005400a
lea rdx, [rsp + 0x40]
nop dword [rax]
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x180053fee
add cl, 0xe0
mov byte [rdx], cl
test cl, cl
je 0x18005400a
movzx eax, word [rbx + 0x58]
inc r8d
inc r10d
add r9, 2
inc rdx
cmp r8d, eax
jl 0x180053fe0
lea rcx, [rsp + 0x40]
mov edx, r10d
call fcn.180065760
xor eax, 0xe427ce1
cmp eax, 0x97c92fff
je 0x180054045
cmp rbx, rdi
je 0x1800541d6
mov rbx, qword [rbx]
jmp 0x180053f90
movsxd rax, r8d
shl rax, 5
mov r13, qword [rax + rcx + 0x18]
jmp 0x1800541e0
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x1800541d6
cmp byte [0x1800970f1], 0
jne 0x1800541d6
mov rdi, qword [0x180096db8]
test rdi, rdi
jne 0x1800540f0
mov ecx, 0x208
mov byte [0x1800970f1], 1
call fcn.1800472c0
mov rdi, rax
test rax, rax
je 0x1800540c7
mov esi, 0xf
lea rbx, [rax + 0x18]
xor r14d, r14d
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r14d
mov qword [rbx], r14
add rbx, 0x20
dec esi
jns 0x180054094
mov r14, qword [rbp + 0x8a8]
xor esi, esi
mov qword [rdi + 0x200], rsi
mov qword [0x180096db8], rdi
jmp 0x1800540d1
mov rdi, rsi
mov qword [0x180096db8], rsi
mov edx, 0xc489c0d7
mov ecx, 0x6e729370
call fcn.180049ad0
mov byte [0x1800970f1], 0
mov qword [0x180096db0], rax
jmp 0x18005410f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x18005410f
nop dword [rax]
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180054100
mov edx, esi
mov rcx, rsi
lea rax, [rdi + 0x10]
nop dword [rax + rax]
cmp dword [rax], 0
je 0x1800541b2
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180054120
mov ecx, 0x208
call fcn.1800472c0
mov rsi, rax
test rax, rax
je 0x18005418b
mov r12d, 0xf
lea rbx, [rax + 0x18]
xor r14d, r14d
nop word [rax + rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r14d
mov qword [rbx], r14
add rbx, 0x20
dec r12d
jns 0x180054160
mov qword [rsi + 0x200], r14
mov r14, qword [rbp + 0x8a8]
jmp 0x18005418d
xor esi, esi
lea rdx, [rbp + 0x5c0]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042fa0
mov dword [rsi + 0x10], 0x97c92fff
mov qword [rdi + 0x200], rsi
xor esi, esi
jmp 0x1800541d6
movsxd rbx, edx
lea rdx, [rbp + 0x5c0]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r13
call fcn.180042fa0
mov dword [rbx + 0x10], 0x97c92fff
movabs rdi, 0xd79a16697bb981ec
test r13, r13
jne 0x1800544dd
mov ecx, 0x97c92fff
call fcn.1800497d0
test al, al
je 0x1800544f4
mov r8, qword [0x180096db8]
cmp r8, rdi
cmove r8, rsi
mov qword [0x180096db8], r8
test r8, r8
je 0x180054257
nop word [rax + rax]
mov edx, esi
mov rcx, rsi
lea rax, [r8 + 0x10]
nop dword [rax]
cmp dword [rax], 0x97c92fff
je 0x180054326
inc rcx
inc edx
add rax, 0x20
cmp rcx, 0x10
jl 0x180054230
mov r8, qword [r8 + 0x200]
test r8, r8
jne 0x180054220
mov rax, qword gs:[0x30]
mov r13, rsi
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, esi
mov edx, esi
cmp si, word [rbx + 0x58]
ja 0x1800542be
lea rax, [rbp + 0x740]
mov r8, r9
lea rcx, [rbp + 0x740]
sub r8, rax
movzx eax, word [r8 + rcx]
mov word [rcx], ax
cmp si, ax
je 0x1800542be
movzx eax, word [rbx + 0x58]
inc edx
add rcx, 2
cmp edx, eax
jle 0x1800542a3
mov r8d, esi
cmp si, word [rbx + 0x58]
jae 0x1800542fa
lea rdx, [rbp + 0x3c0]
nop
movzx ecx, byte [r9]
lea eax, [rcx - 0x61]
cmp al, 0x19
ja 0x1800542de
add cl, 0xe0
mov byte [rdx], cl
test cl, cl
je 0x1800542fa
movzx eax, word [rbx + 0x58]
inc r8d
inc r10d
add r9, 2
inc rdx
cmp r8d, eax
jl 0x1800542d0
lea rcx, [rbp + 0x3c0]
mov edx, r10d
call fcn.180065760
xor eax, 0xe427ce1
cmp eax, 0x97c92fff
je 0x180054337
cmp rbx, rdi
je 0x1800544d8
mov rbx, qword [rbx]
jmp 0x180054280
movsxd rax, edx
shl rax, 5
mov r13, qword [rax + r8 + 0x18]
jmp 0x1800544d8
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x1800544f4
cmp byte [0x1800970f1], 0
jne 0x1800544d8
mov rdi, qword [0x180096db8]
test rdi, rdi
jne 0x1800543ec
mov ecx, 0x208
mov byte [0x1800970f1], 1
call fcn.1800472c0
mov rdi, rax
test rax, rax
je 0x1800543c3
mov esi, 0xf
lea rbx, [rax + 0x18]
xor r14d, r14d
nop word [rax + rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r14d
mov qword [rbx], r14
add rbx, 0x20
dec esi
jns 0x180054390
mov r14, qword [rbp + 0x8a8]
xor esi, esi
mov qword [rdi + 0x200], rsi
mov qword [0x180096db8], rdi
jmp 0x1800543cd
mov rdi, rsi
mov qword [0x180096db8], rsi
mov edx, 0xc489c0d7
mov ecx, 0x6e729370
call fcn.180049ad0
mov byte [0x1800970f1], 0
mov qword [0x180096db0], rax
jmp 0x18005440f
mov rax, qword [rdi + 0x200]
test rax, rax
je 0x18005440f
nop dword [rax + rax]
mov rdi, rax
mov rax, qword [rax + 0x200]
test rax, rax
jne 0x180054400
mov r8d, esi
mov rdx, rsi
lea rax, [rdi + 0x10]
nop dword [rax]
cmp dword [rax], 0
je 0x1800544b4
inc rdx
inc r8d
add rax, 0x20
cmp rdx, 0x10
jl 0x180054420
mov ecx, 0x208
call fcn.1800472c0
mov qword [rsp + 0x38], rax
test rax, rax
je 0x18005448f
lea rbx, [rax + 0x18]
mov esi, 0xf
xor r14d, r14d
nop dword [rax]
lea rcx, [rbx - 0x18]
xor edx, edx
call fcn.180041a90
mov dword [rbx - 8], r14d
mov qword [rbx], r14
add rbx, 0x20
dec esi
jns 0x180054460
mov rsi, qword [rsp + 0x38]
mov qword [rsi + 0x200], r14
mov r14, qword [rbp + 0x8a8]
jmp 0x180054491
xor esi, esi
lea rdx, [rbp + 0x740]
mov rcx, rsi
mov qword [rsi + 0x18], r13
call fcn.180042fa0
mov dword [rsi + 0x10], 0x97c92fff
mov qword [rdi + 0x200], rsi
jmp 0x1800544d8
movsxd rbx, r8d
lea rdx, [rbp + 0x740]
shl rbx, 5
add rbx, rdi
mov rcx, rbx
mov qword [rbx + 0x18], r13
call fcn.180042fa0
mov dword [rbx + 0x10], 0x97c92fff
test r13, r13
je 0x1800544f4
mov edx, 0x304a8b6a
mov rcx, r13
call fcn.180048a60
test rax, rax
je 0x1800544f4
mov rcx, r14
call rax
mov rbx, qword [rbp + 0x890]
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.180045f90
lea rcx, [rsp + 0x20]
call fcn.180043fd0
mov rax, rbx
add rsp, 0x950
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret