Function at 0x140055890
Capabilities:
Hash data using fnv

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 - 0x170]
sub rsp, 0x270
mov rax, qword [0x140134040]
xor rax, rsp
mov qword [rbp + 0x168], rax
mov r13, rcx
mov qword [rbp - 0x48], rcx
xor r14d, r14d
mov dword [rsp + 0x68], r14d
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
movups xmmword [rbp + 0x100], xmm0
movups xmmword [rbp + 0x110], xmm0
movups xmmword [rbp + 0x120], xmm0
mov dword [rbp + 0xf0], r14d
mov qword [rbp + 0xf8], r14
mov qword [rbp + 0x100], r14
mov ecx, 0x28
call fcn.14005b350
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp + 0xf8], rax
mov qword [rbp + 0x108], r14
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], 7
mov qword [rbp + 0x128], 8
mov dword [rbp + 0xf0], 0x3f800000
mov r8, rax
mov edx, 0x10
lea rcx, [rbp + 0x108]
call fcn.140057570
nop
mov rcx, qword [0x140135eb0]
add rcx, 0x118
mov qword [rbp - 0x80], r14
mov r8d, 8
lea rdx, [rbp - 0x80]
call fcn.140049600
xorps xmm0, xmm0
movups xmmword [rbp + 0x158], xmm0
mov rsi, qword [r13]
add rsi, 0x90
mov qword [rbp - 0x58], rsi
mov qword [rbp + 0x158], rsi
mov byte [rbp + 0x160], 1
mov rcx, rsi
call sub.KERNEL32.dll_AcquireSRWLockShared
nop
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xd0], xmm1
mov qword [rbp + 0xe0], r14
mov dword [rsp + 0x68], 4
mov rcx, qword [0x140135eb0]
test rcx, rcx
je 0x140055a74
add rcx, 0x70
call fcn.14005a070
mov rbx, rax
test rax, rax
je 0x140055a74
lea rcx, [rax + 8]
call fcn.14005a070
mov rdi, rax
mov rcx, rbx
call fcn.14005a070
mov rbx, rax
cmp rax, rdi
je 0x140055a74
nop dword [rax]
nop word [rax + rax]
mov qword [rsp + 0x70], r14
mov r8d, 8
lea rdx, [rsp + 0x70]
mov rcx, rbx
call fcn.140049600
mov rdx, qword [rbp + 0xd8]
cmp rdx, qword [rbp + 0xe0]
je 0x140055a5a
mov rax, qword [rsp + 0x70]
mov qword [rdx], rax
add qword [rbp + 0xd8], 8
jmp 0x140055a6b
lea r8, [rsp + 0x70]
lea rcx, [rbp + 0xd0]
call fcn.14005a1b0
add rbx, 0x10
cmp rbx, rdi
jne 0x140055a20
mov dword [rsp + 0x68], r14d
mov r15, qword [rbp + 0xd0]
mov rdi, qword [rbp + 0xd8]
mov qword [rsp + 0x70], rdi
cmp r15, rdi
je 0x1400565ab
movabs r12, 0x100000001b3
mov rax, rdi
mov rdi, qword [r15]
test rdi, rdi
je 0x140056593
mov qword [rbp + 0xe8], rdi
mov rbx, rdi
shr rbx, 0x38
mov rax, rdi
shr rax, 0x30
movzx r11d, al
mov rax, rdi
shr rax, 0x28
movzx r10d, al
mov rax, rdi
shr rax, 0x20
movzx r9d, al
mov rax, rdi
shr rax, 0x18
movzx r8d, al
mov rax, rdi
shr rax, 0x10
movzx edx, al
mov rax, rdi
shr rax, 8
movzx ecx, al
movzx eax, dil
xorps xmm1, xmm1
movdqa xmmword [rbp + 0xc0], xmm1
mov rsi, qword [r13]
movabs r13, 0xcbf29ce484222325
xor rax, r13
imul rax, r12
xor rax, rcx
imul rax, r12
xor rax, rdx
imul rax, r12
xor rax, r8
imul rax, r12
xor rax, r9
imul rax, r12
xor rax, r10
imul rax, r12
xor rax, r11
imul rax, r12
xor rax, rbx
imul rax, r12
mov r8, qword [rsi + 0x30]
and r8, rax
mov r9, qword [rsi + 0x18]
mov rax, r8
add rax, rax
mov rcx, qword [r9 + rax*8 + 8]
mov rdx, qword [rsi + 8]
mov rax, rdx
cmp rcx, rdx
je 0x140055b91
add r8, r8
mov r9, qword [r9 + r8*8]
cmp rdi, qword [rcx + 0x10]
je 0x140055b94
cmp rcx, r9
je 0x140055b91
mov rcx, qword [rcx + 8]
cmp rdi, qword [rcx + 0x10]
jne 0x140055b80
jmp 0x140055b94
mov rcx, r14
test rcx, rcx
cmovne rdx, rcx
cmp rdx, rax
je 0x140055be2
mov rax, qword [rdx + 0x20]
test rax, rax
je 0x140055bad
lock inc dword [rax + 8]
mov rax, qword [rdx + 0x18]
mov qword [rbp - 0x20], rax
mov rax, qword [rdx + 0x20]
mov qword [rbp - 0x18], rax
movaps xmm1, xmmword [rbp - 0x20]
movdqa xmmword [rbp + 0xc0], xmm1
movdqa xmm0, xmm1
psrldq xmm0, 8
movq qword [rsp + 0x78], xmm0
movq rdi, xmm1
jmp 0x140055c96
mov ecx, 0xc0
call fcn.14005b350
mov rsi, rax
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, vtable.std::_Ref_count_obj2_struct_PlayerObject_.0
mov qword [rsi], rax
lea rdi, [rsi + 0x10]
mov rcx, qword [rbp + 0xe8]
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r14
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
mov qword [rdi + 0x20], r14
mov qword [rdi + 0x28], r14
mov qword [rdi + 0x38], r14
mov qword [rdi + 0x40], r14
mov qword [rdi + 0x48], r14
mov qword [rdi + 0x50], r14
mov qword [rdi + 0x58], r14
mov qword [rdi + 0x60], r14
mov qword [rdi + 0x68], r14
mov qword [rdi + 0x70], r14
mov qword [rdi + 0x78], r14
mov qword [rdi + 0x80], r14
mov qword [rdi + 0x88], r14
mov qword [rdi + 0x90], r14
mov qword [rdi + 0x98], r14
mov qword [rdi + 0xa8], rcx
or dword [rsp + 0x68], 2
mov qword [rbp + 0xc0], rdi
mov qword [rbp + 0xc8], rsi
mov r12d, dword [rsp + 0x68]
mov dword [rsp + 0x68], r12d
xor r13d, r13d
movabs rsi, 0x7fffffffffffffff
movabs r12, 0x7fffffffff67697f
nop word [rax + rax]
mov rax, qword [r15]
mov qword [rdi + 0x20], rax
mov rcx, qword [r15]
add rcx, 0x2a0
mov qword [rsp + 0x40], r13
mov r8d, 8
lea rdx, [rsp + 0x40]
call fcn.140049600
mov rax, qword [rsp + 0x40]
mov qword [rdi + 0x28], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 4
lea rdx, str.Head
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x88]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rcx, qword [rax]
mov qword [rdi + 0x38], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 8
lea rdx, str.Humanoid
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x90]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rcx, qword [rax]
mov qword [rdi + 0x40], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 0x10
lea rdx, str.HumanoidRootPart
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x98]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rcx, qword [rax]
mov qword [rdi + 0x48], rcx
mov rax, qword [rdi + 0x40]
add rax, 0x1c0
mov byte [rbp + 0xb8], r13b
mov dword [rbp + 0x151], r13d
mov word [rbp + 0x155], r13w
mov byte [rbp + 0x157], r13b
mov dword [rbp + 0x130], 0x85b3e12
mov qword [rbp + 0x138], rax
lea rax, [rbp + 0xb8]
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x148], 1
mov eax, dword [0x140135e60]
mov dword [rbp + 0x134], eax
mov byte [rbp + 0x150], r13b
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
mov r9d, 0x28
lea r8, [rbp + 0x130]
mov edx, 0x2201c4
mov rcx, qword [0x140135e68]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov eax, r13d
cmp byte [rbp + 0xb8], 1
sete al
mov dword [rdi + 0x30], eax
xorps xmm0, xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
lea rcx, [rsp + 0x48]
movups xmmword [rsp + 0x48], xmm0
jne 0x1400560fe
mov r8d, 0xa
lea rdx, str.UpperTorso
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x10]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x50], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 0xa
lea rdx, str.LowerTorso
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x18]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x58], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 0xc
lea rdx, str.LeftUpperLeg
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x20]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x60], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 8
lea rdx, str.LeftFoot
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0xa0]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x68], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 0xd
lea rdx, str.RightUpperLeg
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x30]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 9
lea rdx, str.RightFoot
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x38]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x78], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 0xc
lea rdx, str.LeftUpperArm
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x40]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x80], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 8
lea rdx, str.LeftHand
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x28]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x88], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 0xd
lea rdx, str.RightUpperArm
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x80]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x90], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], r13
mov qword [rbp + 8], r13
mov r8d, 9
lea rdx, str.RightHand
lea rcx, [rbp - 0x10]
call fcn.140046aa0
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x48]
jmp 0x140056261
mov r8d, 5
lea rdx, str.Torso
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x50]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x50], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 5
lea rdx, str.Torso
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x58]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x58], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 8
lea rdx, str.Left_Leg
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x60]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x68], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 9
lea rdx, str.Right_Leg
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x68]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x78], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov r8d, 8
lea rdx, str.Left_Arm
lea rcx, [rsp + 0x48]
call fcn.140046aa0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x70]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x88], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x28], r13
mov r8d, 9
lea rdx, str.Right_Arm
lea rcx, [rbp - 0x40]
call fcn.140046aa0
lea r8, [rbp - 0x40]
lea rdx, [rbp + 0x78]
lea rcx, [rdi + 0x28]
call fcn.1400599d0
mov rax, qword [rax]
mov qword [rdi + 0x98], rax
cmp qword [rdi + 0xa8], r13
jne 0x1400562ce
lea rcx, [rbp - 0x50]
call fcn.140046d50
mov rax, qword [rbp - 0x50]
mov qword [rsp + 0x40], rax
cmp rax, r12
je 0x1400562b2
mov ecx, 1
mov edx, 0xff
cmovl ecx, edx
test cl, cl
jns 0x1400562b2
add rax, 0x989680
mov qword [rsp + 0x40], rax
jmp 0x1400562b7
mov qword [rsp + 0x40], rsi
lea rcx, [rsp + 0x40]
call fcn.140049310
inc r14d
cmp r14d, 3
jl 0x140055cc0
mov rcx, qword [rdi + 0x40]
add rcx, 0x18c
call fcn.14005a070
mov rbx, rax
mov rcx, qword [rdi + 0x40]
add rcx, 0x18c
call fcn.14005a070
mov rcx, rax
call fcn.14005a070
xor rax, rbx
mov qword [rsp + 0x40], rax
movss xmm0, dword [rsp + 0x40]
movss dword [rdi + 0xa0], xmm0
mov rcx, qword [rdi + 0x40]
add rcx, 0x1ac
call fcn.14005a070
mov rbx, rax
mov rcx, qword [rdi + 0x40]
add rcx, 0x1ac
call fcn.14005a070
mov rcx, rax
call fcn.14005a070
xor rax, rbx
mov qword [rsp + 0x40], rax
movss xmm0, dword [rsp + 0x40]
movss dword [rdi + 0xa4], xmm0
mov rcx, qword [r15]
add rcx, 0x68
call fcn.14005a070
mov r12d, dword [rsp + 0x68]
or r12d, 1
test rax, rax
mov rsi, qword [rsp + 0x78]
mov r13, qword [rbp - 0x48]
lea rcx, [rbp - 0x78]
je 0x140056384
mov rdx, rax
call fcn.14005a4a0
xor r14d, r14d
jmp 0x1400563a8
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
xor r14d, r14d
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], r14
mov r8d, 7
lea rdx, str.Unknown
call fcn.140046aa0
mov dword [rsp + 0x68], r12d
lea rax, [rbp - 0x78]
cmp rdi, rax
je 0x140056410
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x1400563f0
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x1400563eb
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400565ee
mov rcx, r8
call fcn.14005ad48
mov qword [rdi + 0x10], r14
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
movups xmm0, xmmword [rbp - 0x78]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x68]
movups xmmword [rdi + 0x10], xmm1
jmp 0x14005644b
mov rdx, qword [rbp - 0x60]
cmp rdx, 0xf
jbe 0x14005644b
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056446
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400565ee
call fcn.14005ad48
lea r8, [rbp + 0xe8]
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0xf0]
call fcn.140057e80
mov rcx, qword [rax]
test rsi, rsi
je 0x14005647f
lock inc dword [rsi + 8]
mov rsi, qword [rbp + 0xc8]
mov rdi, qword [rbp + 0xc0]
mov qword [rcx + 0x18], rdi
mov rbx, qword [rcx + 0x20]
mov qword [rcx + 0x20], rsi
test rbx, rbx
je 0x1400564cd
mov eax, 0xffffffff
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1400564bf
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400564bf
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov rdi, qword [rbp + 0xc0]
mov rsi, qword [rbp + 0xc8]
mov rax, qword [rbp - 0x80]
cmp qword [rbp + 0xe8], rax
jne 0x140056545
mov rax, qword [r13]
test rsi, rsi
je 0x1400564f5
lock inc dword [rsi + 8]
mov rsi, qword [rbp + 0xc8]
mov rdi, qword [rbp + 0xc0]
mov qword [rax + 0x80], rdi
mov rbx, qword [rax + 0x88]
mov qword [rax + 0x88], rsi
test rbx, rbx
je 0x140056545
mov eax, 0xffffffff
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14005653e
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14005653e
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov rsi, qword [rbp + 0xc8]
test rsi, rsi
je 0x140056584
mov eax, 0xffffffff
lock xadd dword [rsi + 8], eax
cmp eax, 1
jne 0x140056584
mov rbx, qword [rbp + 0xc8]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140056584
mov rcx, qword [rbp + 0xc8]
mov rax, qword [rcx]
call qword [rax + 8]
movabs r12, 0x100000001b3
mov rax, qword [rsp + 0x70]
add r15, 8
cmp r15, rax
jne 0x140055aa2
mov r15, qword [rbp + 0xd0]
mov rsi, qword [rbp - 0x58]
test r15, r15
je 0x1400565fd
mov rax, qword [rbp + 0xe0]
sub rax, r15
sar rax, 3
lea rdx, [rax*8]
mov rax, r15
cmp rdx, 0x1000
jb 0x1400565f5
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400565f5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rcx, r15
call fcn.14005ad48
test rsi, rsi
je 0x1400567ba
mov rcx, rsi
call sub.KERNEL32.dll_ReleaseSRWLockShared
mov rdi, qword [r13]
lea rcx, [rdi + 0x90]
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rbx, qword [r13]
add rbx, 0x40
lea rax, [rbp + 0xf0]
cmp rbx, rax
je 0x1400566e0
mov rcx, rbx
call fcn.1400576b0
mov eax, dword [rbp + 0xf0]
mov dword [rbx], eax
mov rcx, qword [rbx + 8]
mov rax, qword [rbp + 0xf8]
mov qword [rbx + 8], rax
mov qword [rbp + 0xf8], rcx
mov rcx, qword [rbx + 0x10]
mov rax, qword [rbp + 0x100]
mov qword [rbx + 0x10], rax
mov qword [rbp + 0x100], rcx
mov rcx, qword [rbx + 0x18]
mov rax, qword [rbp + 0x108]
mov qword [rbx + 0x18], rax
mov qword [rbp + 0x108], rcx
mov rcx, qword [rbx + 0x20]
mov rax, qword [rbp + 0x110]
mov qword [rbx + 0x20], rax
mov qword [rbp + 0x110], rcx
mov rcx, qword [rbx + 0x28]
mov rax, qword [rbp + 0x118]
mov qword [rbx + 0x28], rax
mov qword [rbp + 0x118], rcx
mov rcx, qword [rbx + 0x30]
mov rax, qword [rbp + 0x120]
mov qword [rbx + 0x30], rax
mov qword [rbp + 0x120], rcx
mov rcx, qword [rbx + 0x38]
mov rax, qword [rbp + 0x128]
mov qword [rbx + 0x38], rax
mov qword [rbp + 0x128], rcx
mov r8, qword [r13]
lea r9, [r8 + 0x40]
cmp r8, r9
je 0x140056771
movss xmm0, dword [r8]
mov eax, dword [r9]
mov dword [r8], eax
movss dword [r9], xmm0
mov rcx, qword [r8 + 8]
mov rax, qword [r9 + 8]
mov qword [r8 + 8], rax
mov qword [r9 + 8], rcx
mov rcx, qword [r8 + 0x10]
mov rax, qword [r9 + 0x10]
mov qword [r8 + 0x10], rax
mov qword [r9 + 0x10], rcx
mov rcx, qword [r8 + 0x18]
mov rax, qword [r9 + 0x18]
mov qword [r8 + 0x18], rax
mov qword [r9 + 0x18], rcx
mov rcx, qword [r8 + 0x20]
mov rax, qword [r9 + 0x20]
mov qword [r8 + 0x20], rax
mov qword [r9 + 0x20], rcx
mov rcx, qword [r8 + 0x28]
mov rax, qword [r9 + 0x28]
mov qword [r8 + 0x28], rax
mov qword [r9 + 0x28], rcx
mov rdx, qword [r8 + 0x30]
mov rax, qword [r9 + 0x30]
mov qword [r8 + 0x30], rax
mov qword [r9 + 0x30], rdx
mov rdx, qword [r8 + 0x38]
mov rax, qword [r9 + 0x38]
mov qword [r8 + 0x38], rax
mov qword [r9 + 0x38], rdx
lea rcx, [rdi + 0x90]
call sub.KERNEL32.dll_ReleaseSRWLockExclusive
nop
lea rcx, [rbp + 0xf0]
call fcn.140055810
mov rcx, qword [rbp + 0x168]
xor rcx, rsp
call fcn.14005ad20
lea r11, [rsp + 0x270]
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
mov ecx, 1
call fcn.14004d760
int3
add rcx, 8
jmp 0x140055890