Function at 0x18003983c
Capabilities:
Log keystrokes via polling

Disassembly:
sub rsp, 0x28
movzx eax, byte [0x18009340b]
mov edx, 1
test al, al
mov ecx, eax
cmove ecx, edx
cmp byte [0x180093409], 0
mov byte [0x18009340b], cl
je 0x180039867
call fcn.1800393c4
add rsp, 0x28
jmp 0x180039b94
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x3c8]
sub rsp, 0x488
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rax - 0xd8], xmm14
movaps xmmword [rax - 0xe8], xmm15
xorps xmm7, xmm7
movups xmmword [rbp + 0x208], xmm7
xorps xmm13, xmm13
xorps xmm6, xmm6
movsd qword [rbp + 0x200], xmm6
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
mov edx, 0x11
call qword [sym.imp.USER32.dll_SetWindowDisplayAffinity]
mov rax, qword [0x180093780]
mov rbx, qword [rax]
xor r12d, r12d
test rbx, rbx
je 0x18003b313
mov rax, qword [rbx + 0x1b8]
mov rax, qword [rax + 0x38]
mov rcx, qword [rax]
test rcx, rcx
je 0x18003b313
mov rax, qword [rcx + 0x78]
lea edx, [r12 + 1]
cmp byte [0x180090c3d], r12b
je 0x180039c6a
mov dword [rax + 0xb0], edx
jmp 0x180039c7d
cmp dword [rax + 0xb0], 3
je 0x180039c7d
mov dword [rax + 0xb0], 3
mov r13, qword [rcx + 0x30]
test r13, r13
je 0x18003b313
mov r15, qword [r13 + 0x338]
mov qword [rsp + 0x58], r15
test r15, r15
je 0x18003b313
mov rax, qword [0x180093790]
test rax, rax
jne 0x180039cbe
lea rdx, str.Class_DungeonCrawler.DCCharacterBase
call fcn.180037ff8
mov qword [0x180093790], rax
mov rdx, rax
mov rcx, r15
call fcn.180037fe0
test al, al
je 0x18003b313
lea rdx, [rbp - 0x48]
call fcn.180038140
movups xmm0, xmmword [rax]
movups xmmword [0x180093610], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [0x180093620], xmm1
movups xmm0, xmmword [rbx + 0x170]
movdqu xmmword [rbp + 0x170], xmm0
movsd xmm9, qword [0x1800860f8]
movaps xmm8, xmm9
movsd qword [rsp + 0x50], xmm9
movaps xmm11, xmm9
movsd qword [rbp + 0x120], xmm9
mov ecx, 0x60
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x18003b313
mov ecx, r12d
mov dword [rbp + 0x3e0], ecx
cmp dword [rbp + 0x178], r12d
jle 0x18003b233
mov rax, r12
mov qword [rbp + 0x128], rax
mov r14d, 0x1000
movsd xmm7, qword [0x1800860c0]
movsd xmm14, qword [0x180086198]
movsd xmm6, qword [0x180086078]
movss xmm15, dword [0x180086108]
movss xmm9, dword [0x18008610c]
xorps xmm10, xmm10
mov rdx, qword [rbp + 0x170]
mov r8d, 1
mov rax, qword [rdx + rax*8]
movups xmm0, xmmword [rax + 0xa8]
movups xmmword [rsp + 0x40], xmm0
mov esi, r12d
mov dword [rbp + 0x3d8], r12d
mov rbx, r12
mov qword [rbp + 0x3e8], rbx
psrldq xmm0, 8
movd edi, xmm0
mov dword [rbp + 0x3d0], edi
test edi, edi
jle 0x18003b1f5
mov eax, edi
mov rcx, qword [rsp + 0x40]
mov edx, 1
mov rdi, qword [rcx + rbx*8]
test rdi, rdi
je 0x18003b1a6
cmp qword [rdi + 0x198], r12
je 0x18003b1a6
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.180037a14
nop
mov rax, qword [0x1800937b8]
test rax, rax
jne 0x180039e24
lea rdx, str.Class_GameplayAbilities.GameplayAbilityTargetActor_Trace
call fcn.180037ff8
mov qword [0x1800937b8], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
je 0x180039e46
lea rdx, str.AGameplayAbilityTargetActor_Trace_found_n
lea rcx, [0x180091a20]
call fcn.1800047a8
mov rax, qword [0x1800937a8]
test rax, rax
jne 0x180039e65
lea rdx, str.Class_GameplayAbilities.GameplayAbilityTargetActor
call fcn.180037ff8
mov qword [0x1800937a8], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
je 0x180039e8e
lea rdx, str.AGameplayAbilityTargetActor_found_n
lea rcx, [0x180091a20]
call fcn.1800047a8
mov byte [rdi + 0x3c0], 1
mov rax, qword [0x180093798]
test rax, rax
jne 0x180039ead
lea rdx, str.Class_DungeonCrawler.DCGATA_LineCollision
call fcn.180037ff8
mov qword [0x180093798], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
je 0x180039eed
lea rdx, str.ADCGATA_LineCollision_found_n
lea rcx, [0x180091a20]
call fcn.1800047a8
mov eax, 1
mov byte [rdi + 0x3c0], al
mov word [rdi + 0x3e8], 0x101
mov dword [rdi + 0x3ec], 0x461c3c00
mov rax, qword [0x1800937d8]
test rax, rax
jne 0x180039f0c
lea rdx, str.Class_DungeonCrawler.ItemActor
call fcn.180037ff8
mov qword [0x1800937d8], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
je 0x180039fe9
cmp byte [0x1800935b9], r12b
jne 0x180039f68
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18003b196
inc rdx
mov rcx, qword [rbp - 0x80]
cmp rdx, r14
mov rax, rcx
jb 0x180039f5e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0ec
call fcn.180041298
jmp 0x18003b196
lea rdx, str.Shield
lea rcx, [rbp - 0x80]
call fcn.1800372d4
cmp rax, 0xffffffffffffffff
jne 0x180039f94
lea rdx, str.Buckler
lea rcx, [rbp - 0x80]
call fcn.1800372d4
cmp rax, 0xffffffffffffffff
je 0x180039f28
xorps xmm0, xmm0
movsd qword [rbp + 0x60], xmm13
xorps xmm1, xmm1
movsd qword [rbp + 8], xmm13
movaps xmmword [rbp + 0x250], xmm0
movsd xmm0, qword [rbp + 0x60]
movsd qword [rbp + 0x260], xmm0
movaps xmmword [rbp + 0x270], xmm1
movsd xmm0, qword [rbp + 8]
movsd qword [rbp + 0x280], xmm0
lea r8, [rbp + 0x250]
lea rdx, [rbp + 0x270]
mov rcx, rdi
call fcn.180038184
jmp 0x180039f28
mov rax, qword [0x1800937f0]
test rax, rax
jne 0x18003a008
lea rdx, str.Class_DungeonCrawler.DCPlayerCharacterBase
call fcn.180037ff8
mov qword [0x1800937f0], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
jne 0x18003b0e2
mov rax, qword [0x1800937d0]
test rax, rax
jne 0x18003a03a
lea rdx, str.Class_DungeonCrawler.DCMonsterBase
call fcn.180037ff8
mov qword [0x1800937d0], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
je 0x18003aa80
xorps xmm0, xmm0
movsd qword [rbp + 0x60], xmm13
movaps xmmword [rbp + 0x290], xmm0
movsd xmm0, qword [rbp + 0x60]
movsd qword [rbp + 0x2a0], xmm0
lea r8, [rbp + 0x290]
mov rdx, rdi
mov rcx, r13
call fcn.180038228
movzx r15d, r12b
test al, al
mov eax, 1
cmovne r15d, eax
mov rax, qword [rdi + 0x6b0]
mov rcx, qword [rax + 0x11f0]
mov r12, qword [rcx]
xorps xmm0, xmm0
comiss xmm0, dword [r12 + 0x704]
jb 0x18003a0f2
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18003a0e1
inc rdx
mov rcx, qword [rbp - 0x80]
cmp rdx, r14
mov rax, rcx
jb 0x18003a0dc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0c2
call fcn.180041298
xorps xmm10, xmm10
mov r15, qword [rsp + 0x58]
xor r12d, r12d
jmp 0x18003b196
cmp qword [rdi + 0x318], 0
je 0x18003a0aa
lea rdx, [rsp + 0x60]
mov rcx, rdi
call fcn.180037a14
nop
lea rdx, [rbp - 8]
mov rcx, rdi
call fcn.180038140
mov rbx, qword [rdi + 0x318]
mov r8d, 0x1d
lea rdx, [rbp + 0x238]
mov rcx, rbx
call fcn.180037254
mov r8, qword [rax]
lea rdx, [rbp - 0x60]
mov rcx, rbx
call fcn.18003728c
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
lea r8, [rbp + 0x88]
lea rdx, [rbp - 0x60]
mov rcx, r13
call fcn.1800381d0
movsd xmm0, qword [0x180093618]
subsd xmm0, qword [rbp]
call fcn.18003cfb4
movaps xmm6, xmm0
movsd xmm0, qword [0x180093610]
subsd xmm0, qword [rbp - 8]
call fcn.18003cfb4
addsd xmm6, xmm0
movsd xmm0, qword [0x180093620]
subsd xmm0, qword [rbp + 8]
call fcn.18003cfb4
addsd xmm0, xmm6
call fcn.18006e6d8
movaps xmm12, xmm0
divsd xmm12, xmm7
cmp byte [0x1800935bb], 0
je 0x18003a433
cmp byte [0x1800935d8], 0
je 0x18003a433
movss xmm0, dword [0x180090c44]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm12
jbe 0x18003a433
comisd xmm8, xmm12
jbe 0x18003a433
movsd qword [rsp + 0x50], xmm12
xor esi, esi
mov r8d, esi
lea rdx, [rbp + 0x230]
mov rcx, qword [rdi + 0x318]
call fcn.180037254
lea rdx, [rbp - 0x48]
mov rcx, rax
call fcn.1800374dc
lea rdx, str.head
mov rcx, rax
call fcn.1800372d4
mov r14, rax
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x18003a260
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003a25b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c09e
call fcn.180041298
mov rbx, qword [rdi + 0x318]
mov r8d, esi
mov rcx, rbx
cmp r14, 0xffffffffffffffff
jne 0x18003a3f5
lea rdx, [rbp + 0x2b0]
call fcn.180037254
lea rdx, [rbp - 0x48]
mov rcx, rax
call fcn.1800374dc
lea rdx, [0x180085a98]
mov rcx, rax
call fcn.1800372d4
mov rbx, rax
mov rdx, qword [rbp - 0x30]
mov r14d, 0x1000
cmp rdx, 0x10
jb 0x18003a2de
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, r14
jb 0x18003a2d9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0a4
call fcn.180041298
cmp rbx, 0xffffffffffffffff
jne 0x18003a3cb
cmp esi, 0x44
je 0x18003a2fd
inc esi
cmp esi, 0x46
jl 0x18003a1f1
jmp 0x18003a42d
mov ebx, 1
mov r8d, ebx
lea rdx, [rbp + 0x240]
mov rcx, qword [rdi + 0x318]
call fcn.180037254
lea rdx, [rbp - 0x48]
mov rcx, rax
call fcn.1800374dc
mov rcx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x18003a332
mov rax, qword [rax]
cmp rcx, 4
jne 0x18003a353
mov r8, rcx
lea rdx, str.None
mov rcx, rax
call fcn.1800444b0
test eax, eax
jne 0x18003a353
xor sil, sil
jmp 0x18003a356
mov sil, bl
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x18003a38d
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, r14
jb 0x18003a388
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0aa
call fcn.180041298
mov rbx, qword [rdi + 0x318]
mov rcx, rbx
test sil, sil
je 0x18003a3bf
mov r8d, 1
lea rdx, [rbp + 0x248]
call fcn.180037254
mov r8, qword [rax]
lea rdx, [rbp - 0x48]
mov rcx, rbx
call fcn.18003728c
jmp 0x18003a416
xor r8d, r8d
lea rdx, [rbp + 0x2b8]
jmp 0x18003a3a9
mov rbx, qword [rdi + 0x318]
mov r8d, esi
lea rdx, [rbp + 0x2c0]
mov rcx, rbx
call fcn.180037254
mov r8, qword [rax]
lea rdx, [rbp - 0x48]
mov rcx, rbx
call fcn.18003728c
jmp 0x18003a42d
lea rdx, [rbp + 0x2c8]
call fcn.180037254
mov r8, qword [rax]
lea rdx, [rbp - 0x48]
mov rcx, rbx
call fcn.18003728c
mov r14d, 0x1000
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movups xmmword [0x1800935f8], xmm0
movsd qword [0x180093608], xmm1
mov esi, dword [rbp + 0x3d8]
mov r8, rdi
mov rdx, r13
lea rcx, [rbp + 0x10]
call fcn.18003914c
movsd xmm10, qword [rbp + 0x10]
ucomisd xmm10, xmm14
jp 0x18003a451
je 0x18003a4be
movsd xmm11, qword [rbp + 0x18]
ucomisd xmm11, xmm14
jp 0x18003a460
je 0x18003a4be
movsd xmm0, qword [rbp + 0x20]
ucomisd xmm0, xmm14
jp 0x18003a46e
je 0x18003a4be
movsd xmm0, qword [rbp + 0x28]
ucomisd xmm0, xmm14
jp 0x18003a47c
je 0x18003a4be
movsd xmm6, qword [rbp + 0x30]
ucomisd xmm6, xmm14
jp 0x18003a48a
je 0x18003a4be
movsd xmm7, qword [rbp + 0x38]
ucomisd xmm7, xmm14
jp 0x18003a498
je 0x18003a4be
movsd xmm9, qword [rbp + 0x40]
ucomisd xmm9, xmm14
jp 0x18003a4a7
je 0x18003a4be
movsd xmm8, qword [rbp + 0x48]
ucomisd xmm8, xmm14
jp 0x18003a561
jne 0x18003a561
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18003a4f7
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, r14
jb 0x18003a4f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0bc
call fcn.180041298
xor r12d, r12d
lea edi, [r12 + 0xf]
mov qword [rsp + 0x78], rdi
mov byte [rsp + 0x60], r12b
mov qword [rsp + 0x70], r12
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18003a545
inc rdx
mov rcx, qword [rbp - 0x80]
cmp rdx, r14
mov rax, rcx
jb 0x18003a540
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0c2
call fcn.180041298
xorps xmm10, xmm10
movsd xmm8, qword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
mov rbx, qword [rbp + 0x3e8]
jmp 0x18003b196
cmp byte [0x180090c3f], 0
je 0x18003a5b5
cvtpd2ps xmm3, xmm7
cvtpd2ps xmm2, xmm6
cvtpd2ps xmm1, xmm8
cvtpd2ps xmm0, xmm9
mov eax, dword [0x180090c60]
mov dword [rsp + 0x38], eax
mov eax, dword [0x180090c54]
mov dword [rsp + 0x30], eax
movss xmm4, dword [r12 + 0x714]
movss dword [rsp + 0x28], xmm4
movss xmm5, dword [r12 + 0x704]
movss dword [rsp + 0x20], xmm5
call fcn.180039ab0
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
lea r8, [rbp - 0x60]
lea rdx, [rbp - 8]
mov rcx, r13
call fcn.1800381d0
test al, al
je 0x18003a8ed
cmp byte [0x180090c71], 0
je 0x18003a712
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x68]
call fcn.1800399cc
nop
lea rdx, [rbp + 0x68]
cmp qword [rbp + 0x80], 0x10
cmovae rdx, qword [rbp + 0x68]
movss xmm0, dword [0x180086188]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x180]
call fcn.18000b464
movaps xmm1, xmm6
subsd xmm1, xmm10
andps xmm1, xmmword [0x1800864b0]
movss xmm0, dword [rbp + 0x180]
cvtps2pd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x180086078]
addsd xmm1, xmm10
cvtpd2ps xmm2, xmm1
movaps xmm0, xmm11
subsd xmm0, qword [0x1800860a8]
cvtpd2ps xmm1, xmm0
lea r9, [rbp + 0x68]
mov rcx, qword [0x180093378]
test r15b, r15b
je 0x18003a690
movss dword [rbp + 0x138], xmm2
movss dword [rbp + 0x13c], xmm1
mov r8d, dword [0x180090c4c]
lea rdx, [rbp + 0x138]
jmp 0x18003a6ae
movss dword [rbp + 0x140], xmm2
movss dword [rbp + 0x144], xmm1
mov r8d, dword [0x180090c58]
lea rdx, [rbp + 0x140]
cmp qword [rbp + 0x80], 0x10
cmovae r9, qword [rbp + 0x68]
call fcn.18001fa50
nop
mov rdx, qword [rbp + 0x80]
cmp rdx, 0x10
jb 0x18003a6fb
inc rdx
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, r14
jb 0x18003a6f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0b0
call fcn.180041298
and qword [rbp + 0x78], 0
mov edi, 0xf
mov qword [rbp + 0x80], rdi
mov byte [rbp + 0x68], 0
jmp 0x18003a717
mov edi, 0xf
cmp dword [0x1800935bc], 0
jne 0x18003a7ae
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18003a75d
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, r14
jb 0x18003a758
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0b6
call fcn.180041298
xor r12d, r12d
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], rdi
mov byte [rsp + 0x60], r12b
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18003a545
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x18003a540
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c07a
jmp 0x18003a540
mov ebx, 0x40
cmp byte [0x180090c3e], 0
je 0x18003a845
movaps xmm3, xmm12
movq r9, xmm3
lea r8, str._.2f
mov edx, ebx
lea rcx, [rbp + 0x10]
call fcn.180001318
movsd xmm1, qword [rbp - 0x58]
movsd xmm0, qword [rbp - 0x60]
lea r9, [rbp + 0x10]
mov rcx, qword [0x180093378]
cvtpd2ps xmm1, xmm1
cvtpd2ps xmm0, xmm0
addss xmm1, xmm15
test r15b, r15b
je 0x18003a822
movss dword [rbp + 0x148], xmm0
movss dword [rbp + 0x14c], xmm1
mov r8d, dword [0x180090c50]
lea rdx, [rbp + 0x148]
jmp 0x18003a840
movss dword [rbp + 0x150], xmm0
movss dword [rbp + 0x154], xmm1
mov r8d, dword [0x180090c5c]
lea rdx, [rbp + 0x150]
call fcn.18001fa50
mov r8, rbx
xor edx, edx
lea rcx, [rbp + 0x10]
call fcn.180044290
cmp byte [0x1800935d9], 0
je 0x18003a8ed
movss xmm3, dword [r12 + 0x704]
cvtps2pd xmm3, xmm3
movq r9, xmm3
lea r8, str._.2f
mov rdx, rbx
lea rcx, [rbp + 0x10]
call fcn.180001318
xor r12d, r12d
cvtpd2ps xmm1, xmm7
cvtpd2ps xmm0, xmm6
lea r9, [rbp + 0x10]
mov rcx, qword [0x180093378]
addss xmm0, dword [0x18008610c]
test r15b, r15b
je 0x18003a8cd
movss dword [rbp + 0x158], xmm0
movss dword [rbp + 0x15c], xmm1
mov r8d, dword [0x180090c40]
lea rdx, [rbp + 0x158]
call fcn.18001fa50
jmp 0x18003a8f0
movss dword [rbp + 0x130], xmm0
movss dword [rbp + 0x134], xmm1
mov r8d, dword [0x180090c64]
lea rdx, [rbp + 0x130]
jmp 0x18003a8c6
xor r12d, r12d
cmp byte [0x180090c70], r12b
je 0x18003aa39
cvtpd2ps xmm1, xmm8
cvtpd2ps xmm0, xmm9
cvtpd2ps xmm2, xmm11
mov rcx, qword [0x180093378]
test r15b, r15b
je 0x18003a954
movss dword [rbp + 0x160], xmm0
movss dword [rbp + 0x164], xmm1
cvtpd2ps xmm0, xmm10
movss dword [rbp + 0x168], xmm0
movss dword [rbp + 0x16c], xmm2
mov r9d, dword [0x180090c48]
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x168]
jmp 0x18003a98e
movss dword [rbp + 0xa0], xmm0
movss dword [rbp + 0xa4], xmm1
cvtpd2ps xmm0, xmm10
movss dword [rbp + 0xa8], xmm0
movss dword [rbp + 0xac], xmm2
mov r9d, dword [0x180090c68]
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0xa8]
movss xmm0, dword [0x18008605c]
movss dword [rsp + 0x30], xmm0
xorps xmm10, xmm10
movss dword [rsp + 0x20], xmm10
call fcn.18001f29c
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18003a9e6
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, r14
jb 0x18003a9e1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0bc
call fcn.180041298
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], r12b
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18003a549
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x18003aa2f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0c2
call fcn.180041298
jmp 0x18003a549
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18003aa72
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, r14
jb 0x18003aa6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0bc
call fcn.180041298
mov qword [rsp + 0x78], 0xf
jmp 0x18003a504
mov rax, qword [0x1800937e0]
test rax, rax
jne 0x18003aa9f
lea rdx, str.BlueprintGeneratedClass_BP_TrapBase.BP_TrapBase_C
call fcn.180037ff8
mov qword [0x1800937e0], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
je 0x18003ad59
xorps xmm0, xmm0
movsd qword [rbp + 0x60], xmm13
movaps xmmword [rbp + 0x190], xmm0
movsd xmm0, qword [rbp + 0x60]
movsd qword [rbp + 0x1a0], xmm0
lea r8, [rbp + 0x190]
mov rdx, rdi
mov rcx, r13
call fcn.180038228
movzx ebx, r12b
test al, al
mov eax, 1
cmovne ebx, eax
cmp byte [0x180090ca3], r12b
jne 0x18003ab38
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18003a555
inc rdx
mov rcx, qword [rbp - 0x80]
cmp rdx, r14
mov rax, rcx
jb 0x18003ab2e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0d4
call fcn.180041298
jmp 0x18003a555
lea rdx, [rsp + 0x60]
mov rcx, rdi
call fcn.180037a14
nop
lea rdx, [rbp - 8]
mov rcx, rdi
call fcn.180038140
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x48]
call fcn.1800399cc
nop
movsd xmm0, qword [0x180093618]
subsd xmm0, qword [rbp]
call fcn.18003cfb4
movaps xmm6, xmm0
movsd xmm0, qword [0x180093610]
subsd xmm0, qword [rbp - 8]
call fcn.18003cfb4
addsd xmm6, xmm0
movsd xmm0, qword [0x180093620]
subsd xmm0, qword [rbp + 8]
call fcn.18003cfb4
addsd xmm0, xmm6
call fcn.18006e6d8
movaps xmm6, xmm0
divsd xmm6, xmm7
comisd xmm6, xmmword [0x1800860a0]
jbe 0x18003ac51
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x18003abf3
inc rdx
mov rcx, qword [rbp - 0x48]
cmp rdx, r14
mov rax, rcx
jb 0x18003abee
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0c8
call fcn.180041298
mov edi, 0xf
mov byte [rbp - 0x48], r12b
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x38], r12
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18003ac3d
inc rdx
mov rcx, qword [rsp + 0x60]
cmp rdx, r14
mov rax, rcx
jb 0x18003ac38
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0ce
call fcn.180041298
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], rdi
mov byte [rsp + 0x60], r12b
jmp 0x18003aaf8
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
lea r8, [rbp - 0x60]
lea rdx, [rbp - 8]
mov rcx, r13
call fcn.1800381d0
test al, al
je 0x18003abbc
movaps xmm3, xmm6
movq r9, xmm6
lea r8, str._.0f
mov edx, 0x40
lea rcx, [rbp + 0x10]
call fcn.180001318
movsd xmm7, qword [rbp - 0x58]
movsd xmm6, qword [rbp - 0x60]
lea r9, [rbp + 0x10]
mov rcx, qword [0x180093378]
cvtpd2ps xmm7, xmm7
cvtpd2ps xmm6, xmm6
movaps xmm0, xmm6
subss xmm0, xmm15
test bl, bl
je 0x18003acf9
movss dword [rbp + 0xb0], xmm0
movss dword [rbp + 0xb4], xmm7
mov r8d, dword [0x180090ca8]
lea rdx, [rbp + 0xb0]
call fcn.18001fa50
movss dword [rbp + 0xb8], xmm6
movss dword [rbp + 0xbc], xmm7
mov r8d, dword [0x180090ca8]
lea rdx, [rbp + 0xb8]
jmp 0x18003ad3a
movss dword [rbp + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm7
mov r8d, dword [0x180090ca4]
lea rdx, [rbp + 0xc0]
call fcn.18001fa50
movss dword [rbp + 0xc8], xmm6
movss dword [rbp + 0xcc], xmm7
mov r8d, dword [0x180090ca4]
lea rdx, [rbp + 0xc8]
lea r9, [rbp - 0x48]
cmp qword [rbp - 0x30], 0x10
cmovae r9, qword [rbp - 0x48]
mov rcx, qword [0x180093378]
call fcn.18001fa50
jmp 0x18003abbc
lea rdx, [rbp - 0x28]
mov rcx, rdi
call fcn.180037a14
nop
lea rdx, str.Exit
lea rcx, [rbp - 0x28]
call fcn.1800372d4
cmp rax, 0xffffffffffffffff
jne 0x18003ae8c
lea rdx, str.Escape
lea rcx, [rbp - 0x28]
call fcn.1800372d4
cmp rax, 0xffffffffffffffff
jne 0x18003ae8c
mov rax, qword [0x180093800]
test rax, rax
jne 0x18003adb9
lea rdx, str.BlueprintGeneratedClass_BP_DungeonExitBase.BP_DungeonExitBase_C
call fcn.180037ff8
mov qword [0x180093800], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
jne 0x18003ae8c
mov rax, qword [0x1800937c8]
test rax, rax
jne 0x18003adeb
lea rdx, str.BlueprintGeneratedClass_BP_DungeonEscape.BP_DungeonEscape_C
call fcn.180037ff8
mov qword [0x1800937c8], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
jne 0x18003ae8c
mov rax, qword [0x1800937a0]
test rax, rax
jne 0x18003ae1d
lea rdx, str.BlueprintGeneratedClass_BP_CaveExit.BP_CaveExit_C
call fcn.180037ff8
mov qword [0x1800937a0], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
jne 0x18003ae8c
mov rax, qword [0x1800937f8]
test rax, rax
jne 0x18003ae4b
lea rdx, str.BlueprintGeneratedClass_BP_DungeonDown.BP_DungeonDown_C
call fcn.180037ff8
mov qword [0x1800937f8], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
jne 0x18003ae8c
mov rax, qword [0x1800937b0]
test rax, rax
jne 0x18003ae79
lea rdx, str.BlueprintGeneratedClass_BP_RuinsDown.BP_RuinsDown_C
call fcn.180037ff8
mov qword [0x1800937b0], rax
mov rdx, rax
mov rcx, rdi
call fcn.180037fe0
test al, al
je 0x18003b05c
xorps xmm0, xmm0
movsd qword [rbp + 0x60], xmm13
movaps xmmword [rbp + 0x1d0], xmm0
movsd xmm0, qword [rbp + 0x60]
movsd qword [rbp + 0x1e0], xmm0
lea r8, [rbp + 0x1d0]
mov rdx, rdi
mov rcx, r13
call fcn.180038228
movzx ebx, r12b
test al, al
mov eax, 1
cmovne ebx, eax
cmp byte [0x180090cb4], r12b
jne 0x18003af5c
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x18003af0d
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, r14
jb 0x18003af08
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0da
call fcn.180041298
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], r12b
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18003a555
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x18003ab2e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c080
jmp 0x18003ab2e
lea rdx, [rbp - 8]
mov rcx, rdi
call fcn.180038140
movsd xmm0, qword [0x180093618]
subsd xmm0, qword [rbp]
call fcn.18003cfb4
movaps xmm6, xmm0
movsd xmm0, qword [0x180093610]
subsd xmm0, qword [rbp - 8]
call fcn.18003cfb4
addsd xmm6, xmm0
movsd xmm0, qword [0x180093620]
subsd xmm0, qword [rbp + 8]
call fcn.18003cfb4
addsd xmm0, xmm6
call fcn.18006e6d8
movaps xmm6, xmm0
divsd xmm6, xmm7
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
lea r8, [rbp - 0x60]
lea rdx, [rbp - 8]
mov rcx, r13
call fcn.1800381d0
test al, al
je 0x18003b055
movaps xmm3, xmm6
movq r9, xmm6
lea r8, str.__.0f__EXIT
mov edx, 0x40
lea rcx, [rbp + 0x10]
call fcn.180001318
movsd xmm1, qword [rbp - 0x58]
movsd xmm0, qword [rbp - 0x60]
lea r9, [rbp + 0x10]
mov rcx, qword [0x180093378]
cvtpd2ps xmm1, xmm1
cvtpd2ps xmm0, xmm0
test bl, bl
je 0x18003b032
movss dword [rbp + 0xd0], xmm0
movss dword [rbp + 0xd4], xmm1
mov r8d, dword [0x180090cb0]
lea rdx, [rbp + 0xd0]
jmp 0x18003b050
movss dword [rbp + 0xd8], xmm0
movss dword [rbp + 0xdc], xmm1
mov r8d, dword [0x180090cac]
lea rdx, [rbp + 0xd8]
call fcn.18001fa50
mov rbx, qword [rbp + 0x3e8]
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x18003b093
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, r14
jb 0x18003b08e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0da
call fcn.180041298
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], r12b
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18003b196
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x180039f5e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c080
jmp 0x180039f5e
xorps xmm0, xmm0
movsd qword [rsp + 0x70], xmm13
movaps xmmword [rbp + 0x1b0], xmm0
movsd xmm0, qword [rsp + 0x70]
movsd qword [rbp + 0x1c0], xmm0
lea r8, [rbp + 0x1b0]
mov rdx, rdi
mov rcx, r13
call fcn.180038228
movzx esi, r12b
test al, al
mov eax, 1
cmovne esi, eax
cmp rdi, r15
jne 0x18003b366
lea rdx, [rsp + 0x60]
mov rcx, rdi
call fcn.180038140
movups xmm0, xmmword [rax]
movups xmmword [0x180093610], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [0x180093620], xmm1
mov eax, 1
mov dword [0x1800935bc], eax
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18003b190
inc rdx
mov rcx, qword [rbp - 0x80]
cmp rdx, r14
mov rax, rcx
jb 0x18003b18b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0ec
call fcn.180041298
mov esi, dword [rbp + 0x3d8]
mov edx, 1
mov rcx, qword [rsp + 0x40]
mov eax, dword [rbp + 0x3d0]
add esi, edx
mov dword [rbp + 0x3d8], esi
add rbx, rdx
mov qword [rbp + 0x3e8], rbx
cmp esi, eax
movss xmm9, dword [0x18008610c]
movsd xmm7, qword [0x1800860c0]
movsd xmm6, qword [0x180086078]
movsd xmm11, qword [rbp + 0x120]
jl 0x180039dde
mov ecx, dword [rbp + 0x3e0]
mov rdx, qword [rbp + 0x170]
mov r8d, 1
add ecx, r8d
mov dword [rbp + 0x3e0], ecx
mov rax, qword [rbp + 0x128]
add rax, r8
mov qword [rbp + 0x128], rax
cmp ecx, dword [rbp + 0x178]
jl 0x180039d97
movsd xmm6, qword [rbp + 0x200]
movups xmm7, xmmword [rbp + 0x208]
movsd xmm9, qword [0x1800860f8]
cmp byte [0x180090c3c], r12b
je 0x18003b2f7
mov ecx, dword [0x180090c38]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x18003b2f7
ucomisd xmm7, xmm13
jp 0x18003b262
je 0x18003b2f7
movaps xmm0, xmm7
unpckhpd xmm0, xmm7
ucomisd xmm0, xmm13
jp 0x18003b276
je 0x18003b2f7
addsd xmm6, qword [0x180086090]
movsd qword [rbp + 0x200], xmm6
movaps xmmword [rbp + 0x1b0], xmm7
movsd xmm0, qword [rbp + 0x200]
movsd qword [rbp + 0x1c0], xmm0
mov rax, qword [r13 + 0x348]
movups xmm0, xmmword [rax + 0x22c0]
movaps xmmword [rbp + 0x1d0], xmm0
movsd xmm1, qword [rax + 0x22d0]
movsd qword [rbp + 0x1e0], xmm1
lea r9, [rbp + 0x1b0]
lea r8, [rbp + 0x1d0]
lea rdx, [rbp + 0x190]
mov rcx, r13
call fcn.18003829c
movsd qword [rbp + 0x1a0], xmm13
lea rdx, [rbp + 0x190]
mov rcx, r13
call fcn.18003826c
ucomisd xmm8, xmm9
jp 0x18003b313
jne 0x18003b313
xorps xmm0, xmm0
movups xmmword [0x1800935f8], xmm0
movsd qword [0x180093608], xmm13
lea r11, [rsp + 0x488]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rax, qword [rdi + 0x6b0]
mov rcx, qword [rax + 0x11f0]
mov r14, qword [rcx]
comiss xmm10, dword [r14 + 0x704]
jb 0x18003b38c
mov r14d, 0x1000
jmp 0x18003b159
cmp qword [rdi + 0x318], r12
je 0x18003b381
cmp byte [0x1800935db], r12b
je 0x18003b4d3
lea rcx, [rdi + 0x790]
lea rdx, [rsp + 0x60]
call fcn.180038d40
mov rbx, rax
lea rcx, [r15 + 0x790]
lea rdx, [rbp - 0x28]
call fcn.180038d40
mov rcx, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x18003b3d4
mov rbx, qword [rbx]
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x18003b3e2
mov rax, qword [rax]
cmp r8, rcx
jne 0x18003b3fb
mov rdx, rbx
mov rcx, rax
call fcn.1800444b0
test eax, eax
jne 0x18003b3fb
lea ebx, [rax + 1]
jmp 0x18003b3fe
mov bl, r12b
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x18003b439
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003b434
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0e0
call fcn.180041298
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], r12b
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18003b486
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003b481
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0e6
call fcn.180041298
test bl, bl
je 0x18003b4d3
mov rdx, qword [rbp - 0x68]
mov r14d, 0x1000
cmp rdx, 0x10
jb 0x18003b4c7
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x18003b4c2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0ec
call fcn.180041298
mov rbx, qword [rbp + 0x3e8]
jmp 0x18003b190
movabs rax, 0x408f380000000000
mov qword [rdi + 0xbd0], rax
mov qword [rdi + 0xbd8], rax
mov qword [rdi + 0xbe0], rax
mov rax, qword [rdi + 0xa70]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xa70]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xa70]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xa78]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xa78]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xa78]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xa80]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xa80]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xa80]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xa88]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xa88]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xa88]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xa90]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xa90]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xa90]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xa98]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xa98]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xa98]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xaa0]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xaa0]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xaa0]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xaa8]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xaa8]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xaa8]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xab0]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xab0]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xab0]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xab8]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xab8]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xab8]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xac0]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xac0]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xac0]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xac8]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xac8]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xac8]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xad0]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xad0]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xad0]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xad8]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xad8]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xad8]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xae0]
mov qword [rax + 0x558], r12
mov rax, qword [rdi + 0xae0]
mov qword [rax + 0x560], r12
mov rax, qword [rdi + 0xae0]
mov qword [rax + 0x568], r12
mov rax, qword [rdi + 0xae8]
movabs rcx, 0x407f400000000000
mov qword [rax + 0x558], rcx
mov rax, qword [rdi + 0xae8]
mov qword [rax + 0x560], rcx
mov rax, qword [rdi + 0xae8]
mov qword [rax + 0x568], rcx
cmp byte [0x180090c72], r12b
je 0x18003b8e3
mov r9d, 4
lea r8d, [r9 + 0x19]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
mov ebx, 3
mov r9d, ebx
lea r8d, [rbx + 1]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx - 1]
mov r8d, ebx
mov rdx, rdi
mov rcx, r13
call fcn.180039870
mov ebx, 1
mov r9d, ebx
lea r8d, [rbx + 1]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 5]
lea r8d, [rbx + 4]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 6]
lea r8d, [rbx + 5]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 7]
lea r8d, [rbx + 6]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 0x20]
lea r8d, [rbx + 0x1f]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 0x21]
lea r8d, [rbx + 0x20]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 0x23]
lea r8d, [rbx + 0x21]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 0x36]
mov r8d, ebx
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 0x37]
lea r8d, [rbx + 0x36]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 0x38]
lea r8d, [rbx + 0x37]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 0x3c]
mov r8d, ebx
mov rdx, rdi
mov rcx, r13
call fcn.180039870
mov ebx, 0x3e
mov r9d, ebx
lea r8d, [rbx - 1]
mov rdx, rdi
mov rcx, r13
call fcn.180039870
lea r9d, [rbx + 1]
mov r8d, ebx
mov rdx, rdi
mov rcx, r13
call fcn.180039870
mov rbx, qword [rdi + 0x318]
mov r8d, 0x39
lea rdx, [rbp + 0x2d0]
mov rcx, rbx
call fcn.180037254
mov r8, qword [rax]
lea rdx, [rbp + 0x88]
mov rcx, rbx
call fcn.18003728c
mov rbx, qword [rdi + 0x318]
mov r8d, 0x3f
lea rdx, [rbp + 0x2d8]
mov rcx, rbx
call fcn.180037254
mov r8, qword [rax]
lea rdx, [rbp - 8]
mov rcx, rbx
call fcn.18003728c
movsd xmm2, qword [rbp + 8]
addsd xmm2, qword [rbp + 0x98]
mulsd xmm2, xmm6
movsd xmm1, qword [rbp]
addsd xmm1, qword [rbp + 0x90]
mulsd xmm1, xmm6
movsd xmm0, qword [rbp - 8]
addsd xmm0, qword [rbp + 0x88]
mulsd xmm0, xmm6
movsd qword [rbp + 0x50], xmm0
movsd qword [rbp + 0x58], xmm1
movsd qword [rbp + 0x60], xmm2
mov r8, rdi
mov rdx, r13
lea rcx, [rbp + 0x10]
call fcn.18003914c
cmp byte [0x180090ca0], r12b
je 0x18003b9f1
movsd xmm3, qword [rbp + 0x38]
cvtpd2ps xmm3, xmm3
movsd xmm2, qword [rbp + 0x30]
cvtpd2ps xmm2, xmm2
movsd xmm1, qword [rbp + 0x48]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x40]
cvtpd2ps xmm0, xmm0
mov eax, dword [0x180090c98]
mov dword [rsp + 0x38], eax
mov eax, dword [0x180090c78]
mov dword [rsp + 0x30], eax
movss xmm4, dword [r14 + 0x714]
movss dword [rsp + 0x28], xmm4
movss xmm5, dword [r14 + 0x704]
movss dword [rsp + 0x20], xmm5
call fcn.180039ab0
lea rdx, [rbp - 0x60]
mov rcx, rdi
call fcn.180038140
movsd xmm0, qword [0x180093618]
subsd xmm0, qword [rbp - 0x58]
call fcn.18003cfb4
movaps xmm6, xmm0
movsd xmm0, qword [0x180093610]
subsd xmm0, qword [rbp - 0x60]
call fcn.18003cfb4
addsd xmm6, xmm0
movsd xmm0, qword [0x180093620]
subsd xmm0, qword [rbp - 0x50]
call fcn.18003cfb4
addsd xmm0, xmm6
call fcn.18006e6d8
movaps xmm6, xmm0
divsd xmm6, xmm7
cmp byte [0x1800935bb], r12b
je 0x18003bab4
movss xmm0, dword [0x180090c44]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm6
jbe 0x18003bab4
comisd xmm8, xmm6
jbe 0x18003bab4
movsd qword [rsp + 0x50], xmm6
mov rbx, qword [rdi + 0x318]
mov r8d, 0x1d
lea rdx, [rbp + 0x218]
mov rcx, rbx
call fcn.180037254
mov r8, qword [rax]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.18003728c
movups xmm0, xmmword [rax]
movups xmmword [0x1800935f8], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [0x180093608], xmm1
comisd xmm11, xmm6
jbe 0x18003bb06
movsd qword [rbp + 0x120], xmm6
mov rbx, qword [rdi + 0x318]
mov r8d, 0x1d
lea rdx, [rbp + 0x220]
mov rcx, rbx
call fcn.180037254
mov r8, qword [rax]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.18003728c
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x208], xmm0
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0x200], xmm0
mov rbx, qword [rdi + 0x318]
mov r8d, 0x1d
lea rdx, [rbp + 0x228]
mov rcx, rbx
call fcn.180037254
mov r8, qword [rax]
lea rdx, [rbp - 0x48]
mov rcx, rbx
call fcn.18003728c
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
lea r8, [rbp + 0x88]
lea rdx, [rbp - 0x48]
mov rcx, r13
call fcn.1800381d0
cmp byte [0x180090ca1], r12b
je 0x18003bd4a
lea rcx, [rdi + 0x780]
lea rdx, [rbp - 0x48]
call fcn.180038d40
test sil, sil
je 0x18003bc63
mov rdx, rax
lea rcx, [rbp - 0x28]
call fcn.1800390cc
nop
cmp qword [rax + 0x18], 0x10
jb 0x18003bb8b
mov rax, qword [rax]
movsd xmm1, qword [rbp + 0x18]
cvtpd2ps xmm1, xmm1
addss xmm1, xmm15
movsd xmm0, qword [rbp + 0x10]
cvtpd2ps xmm0, xmm0
subss xmm0, xmm9
movss dword [rbp + 0xe0], xmm0
movss dword [rbp + 0xe4], xmm1
mov r9, rax
mov r8d, dword [0x180090c80]
lea rdx, [rbp + 0xe0]
mov rcx, qword [0x180093378]
call fcn.18001fa50
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x18003bc10
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003bc0b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0f2
call fcn.180041298
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], r12b
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x18003bd4a
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003bd45
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c086
jmp 0x18003bd45
mov rdx, rax
lea rcx, [rbp - 0x28]
call fcn.1800390cc
nop
cmp qword [rax + 0x18], 0x10
jb 0x18003bc7a
mov rax, qword [rax]
movsd xmm1, qword [rbp + 0x18]
cvtpd2ps xmm1, xmm1
addss xmm1, xmm15
movsd xmm0, qword [rbp + 0x10]
cvtpd2ps xmm0, xmm0
subss xmm0, xmm9
movss dword [rbp + 0xe8], xmm0
movss dword [rbp + 0xec], xmm1
mov r9, rax
mov r8d, dword [0x180090c84]
lea rdx, [rbp + 0xe8]
mov rcx, qword [0x180093378]
call fcn.18001fa50
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x18003bcff
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003bcfa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0f8
call fcn.180041298
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], r12b
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x18003bd4a
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003bd45
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c0fe
call fcn.180041298
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x50]
mov rcx, r13
call fcn.1800381d0
test al, al
je 0x18003c033
movsd xmm7, qword [rbp + 0x90]
movups xmm8, xmmword [rbp + 0x88]
cmp byte [0x180090ca2], r12b
je 0x18003beac
lea rcx, [rdi + 0x7d8]
lea rdx, [rbp - 0x28]
call fcn.180038d40
test sil, sil
je 0x18003be28
cmp qword [rax + 0x18], 0x10
jb 0x18003bda9
mov rax, qword [rax]
cvtpd2ps xmm1, xmm7
subss xmm1, xmm15
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm8
movss dword [rbp + 0xf0], xmm0
movss dword [rbp + 0xf4], xmm1
mov r9, rax
mov r8d, dword [0x180090c8c]
lea rdx, [rbp + 0xf0]
mov rcx, qword [0x180093378]
call fcn.18001fa50
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x18003beac
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003bea7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c08c
jmp 0x18003bea7
cmp qword [rax + 0x18], 0x10
jb 0x18003be32
mov rax, qword [rax]
cvtpd2ps xmm1, xmm7
subss xmm1, xmm15
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm8
movss dword [rbp + 0xf8], xmm0
movss dword [rbp + 0xfc], xmm1
mov r9, rax
mov r8d, dword [0x180090c90]
lea rdx, [rbp + 0xf8]
mov rcx, qword [0x180093378]
call fcn.18001fa50
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 0x10
jb 0x18003beac
inc rdx
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003bea7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c074
call fcn.180041298
cmp dword [0x1800935bc], r12d
jne 0x18003befe
mov rdx, qword [rbp - 0x68]
mov r14d, 0x1000
cmp rdx, 0x10
jb 0x18003bef2
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x18003beed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c098
call fcn.180041298
movsd xmm8, qword [rsp + 0x50]
jmp 0x18003b4c7
movaps xmm3, xmm6
movq r9, xmm6
lea r8, str._.2f
mov ebx, 0x40
mov edx, ebx
lea rcx, [rbp + 0x10]
call fcn.180001318
cmp byte [0x180090c73], r12b
je 0x18003bf93
movsd xmm1, qword [rbp - 0x58]
movsd xmm0, qword [rbp - 0x60]
lea r9, [rbp + 0x10]
mov rcx, qword [0x180093378]
cvtpd2ps xmm1, xmm1
cvtpd2ps xmm0, xmm0
addss xmm1, dword [0x180086100]
test sil, sil
je 0x18003bf70
movss dword [rbp + 0x100], xmm0
movss dword [rbp + 0x104], xmm1
mov r8d, dword [0x180090c74]
lea rdx, [rbp + 0x100]
jmp 0x18003bf8e
movss dword [rbp + 0x108], xmm0
movss dword [rbp + 0x10c], xmm1
mov r8d, dword [0x180090c94]
lea rdx, [rbp + 0x108]
call fcn.18001fa50
mov r8, rbx
xor edx, edx
lea rcx, [rbp + 0x10]
call fcn.180044290
movss xmm3, dword [r14 + 0x704]
cvtps2pd xmm3, xmm3
movq r9, xmm3
lea r8, str._.2f
mov rdx, rbx
lea rcx, [rbp + 0x10]
call fcn.180001318
cmp byte [0x1800935da], r12b
je 0x18003c033
cvtpd2ps xmm1, xmm7
xorps xmm0, xmm0
lea r9, [rbp + 0x10]
mov rcx, qword [0x180093378]
cvtsd2ss xmm0, xmm8
addss xmm0, xmm9
test sil, sil
je 0x18003c00f
movss dword [rbp + 0x110], xmm0
movss dword [rbp + 0x114], xmm1
mov r8d, dword [0x180090c7c]
lea rdx, [rbp + 0x110]
jmp 0x18003c02d
movss dword [rbp + 0x118], xmm0
movss dword [rbp + 0x11c], xmm1
mov r8d, dword [0x180090c9c]
lea rdx, [rbp + 0x118]
call fcn.18001fa50
nop
mov rdx, qword [rbp - 0x68]
mov r14d, 0x1000
cmp rdx, 0x10
jb 0x18003bef2
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x18003beed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c092
jmp 0x18003beed
call fcn.18004c950
nop
call fcn.18004c950
int3
call fcn.18004c950
nop
call fcn.18004c950
int3
call fcn.18004c950
nop
call fcn.18004c950
int3
call fcn.18004c950
nop
call fcn.18004c950
int3
call fcn.18004c950
int3
call fcn.18004c950
int3
call fcn.18004c950
nop
call fcn.18004c950
int3
call fcn.18004c950
nop
call fcn.18004c950
nop
call fcn.18004c950
nop
call fcn.18004c950
nop
call fcn.18004c950
nop
call fcn.18004c950
nop
call fcn.18004c950
nop
call fcn.18004c950
nop
call fcn.18004c950
nop
call fcn.18004c950
nop
call fcn.18004c950
nop
call fcn.18004c950
int3