Function at 0x1800237a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
push r13
sub rsp, 0xa0
mov qword [rax + 0x10], rbx
xor r13d, r13d
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
movabs rsi, 0xd80958fc74e988a6
mov qword [rax - 0x10], rdi
mov qword [rax - 0x18], r12
mov r12, rcx
mov qword [rax - 0x20], r14
mov qword [rax - 0x28], r15
movaps xmmword [rax - 0x38], xmm6
cmp byte [rcx + 2], r13b
je 0x18002380e
call fcn.180023660
mov rcx, rsi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
lea edx, [r13 + 0x41]
lea r8d, [r13 + 1]
mov rcx, qword [rax]
mov ecx, dword [rcx]
call fcn.18002ae10
cmp byte [r12 + 6], r13b
je 0x18002387d
call fcn.180023660
mov rcx, rsi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 0x3a83126f
movabs rcx, 0x364df566ec833de2
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
cmp byte [r12 + 7], r13b
je 0x18002388e
mov edx, 0x16
call fcn.18002ad90
cmp byte [r12 + 0xa], r13b
je 0x1800238fd
call fcn.180023660
mov rcx, rsi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
movabs rcx, 0x428ca6dbd1094446
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
movzx edx, byte [r12 + 0x11]
mov rcx, r12
call fcn.18002b680
movzx edx, byte [r12 + 0x18]
call fcn.18002be60
movss xmm2, dword [r12 + 0x20]
movzx edx, byte [r12 + 0x1c]
call fcn.18002c280
movss xmm6, dword [r12 + 0x28]
cmp byte [r12 + 0x24], r13b
je 0x18002399c
call fcn.180023660
mov rcx, rsi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm6
movabs rcx, 0x85bf80fa50a39d1
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
movss xmm6, dword [r12 + 0x30]
cmp byte [r12 + 0x2c], r13b
je 0x180023a10
call fcn.180023660
mov rcx, rsi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm6
movabs rcx, 0xb3e35ac043707d9
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
cmp byte [r12 + 0x34], r13b
je 0x180023b19
movss xmm0, dword [0x18012cda4]
mov r9d, 0x49d9
movd xmm6, dword [r12 + 0x78]
movaps xmmword [rsp + 0x60], xmm7
movd xmm7, dword [r12 + 0x74]
movaps xmmword [rsp + 0x50], xmm8
movd xmm8, dword [r12 + 0x70]
cvtdq2ps xmm6, xmm6
cvtdq2ps xmm7, xmm7
divss xmm6, xmm0
divss xmm7, xmm0
movss dword [rsp + 0x40], xmm6
cvtdq2ps xmm8, xmm8
movss dword [rsp + 0x38], xmm7
divss xmm8, xmm0
movss xmm0, dword [r12 + 0x38]
movss dword [rsp + 0x30], xmm8
movss dword [rsp + 0x20], xmm0
call fcn.18002b240
movss xmm0, dword [r12 + 0x38]
mov r9d, 0xdead
movss dword [rsp + 0x40], xmm6
movss dword [rsp + 0x38], xmm7
movss dword [rsp + 0x30], xmm8
movss dword [rsp + 0x20], xmm0
call fcn.18002b240
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x60]
cmp byte [r12 + 0x35], r13b
je 0x180023b19
mov ecx, dword [r12 + 0x70]
mov eax, ecx
test ecx, ecx
jle 0x180023ae1
cmp dword [r12 + 0x78], r13d
jne 0x180023ae1
inc dword [r12 + 0x74]
lea eax, [rcx - 1]
mov dword [r12 + 0x70], eax
mov ecx, dword [r12 + 0x74]
mov edx, ecx
test ecx, ecx
jle 0x180023afd
test eax, eax
jne 0x180023afd
inc dword [r12 + 0x78]
lea edx, [rcx - 1]
mov dword [r12 + 0x74], edx
mov ecx, dword [r12 + 0x78]
test ecx, ecx
jle 0x180023b19
test edx, edx
jne 0x180023b19
inc eax
mov dword [r12 + 0x70], eax
lea eax, [rcx - 1]
mov dword [r12 + 0x78], eax
cmp byte [r12 + 0x3c], r13b
je 0x180023b88
call fcn.180023660
mov rcx, rsi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
movabs rcx, 0x3882114bde571ad4
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
movzx edx, byte [r12]
call fcn.18002b470
cmp byte [r12 + 0x3d], r13b
je 0x180023c6b
call fcn.180023660
mov rcx, rsi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
movabs rcx, 0x15d757606d170c3c
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov edi, dword [rcx]
call fcn.180023660
mov rcx, rsi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], edi
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r13d
movabs rcx, 0x6b76dc1f3ae6e6a3
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
movzx edx, byte [r12 + 0x3e]
call fcn.18002c480
cmp byte [r12 + 0x3f], r13b
je 0x180023d08
mov rbx, qword [0x1801eaec8]
mov rax, qword [rbx + 0x48]
mov rax, qword [rax]
test rax, rax
je 0x180023ca6
mov rax, qword [rax + 8]
test rax, rax
je 0x180023ca6
mov rcx, qword [rax + 0x10a8]
jmp 0x180023ca9
mov rcx, r13
mov dword [rcx + 0x8d8], r13d
mov rax, qword [rbx + 0x48]
mov rax, qword [rax]
test rax, rax
je 0x180023cce
mov rax, qword [rax + 8]
test rax, rax
je 0x180023cce
mov rcx, qword [rax + 0x10a8]
jmp 0x180023cd1
mov rcx, r13
mov byte [rcx + 0x8d0], r13b
mov rcx, qword [rbx + 0xf8]
mov r8, qword [rcx + 0x20]
mov rdx, qword [rcx + 0x10]
mov rcx, qword [rcx + 8]
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0x100]
mov r8, qword [rcx + 0x20]
mov rdx, qword [rcx + 0x10]
mov rcx, qword [rcx + 8]
call sub.VCRUNTIME140.dll_memcpy
mov r8d, dword [r12 + 0x68]
movzx edx, byte [r12 + 0x40]
call fcn.18002c760
movzx edx, byte [r12 + 0x41]
call fcn.18002cb60
cmp byte [r12 + 0x42], r13b
je 0x180023d5c
mov rax, qword [0x1801eaec8]
mov rcx, qword [rax + 0x48]
mov rax, qword [rcx]
test rax, rax
je 0x180023d4f
mov rax, qword [rax + 8]
test rax, rax
je 0x180023d4f
mov rax, qword [rax + 0x10a8]
jmp 0x180023d52
mov rax, r13
mov dword [rax + 0xd44], 0x42c80000
movzx edx, byte [r12 + 0x43]
call fcn.18002cd30
movabs rbx, 0x4f8644af03d0e0d6
movabs rdi, 0x7a5487fe9faa6b48
cmp byte [r12 + 0x44], r13b
je 0x180023e19
call fcn.180023660
mov rcx, rbx
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
movsxd rax, dword [rcx]
imul rdx, rax, 0x1d2
mov rax, qword [0x1801eaec8]
add rdx, 0x288e08
mov rcx, rdx
and edx, 0x3ffff
shr rcx, 0x12
mov rax, qword [rax + 0x80]
and ecx, 0x3f
mov rax, qword [rax + rcx*8]
mov dword [rax + rdx*8], 1
call fcn.180023660
mov rcx, rdi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov r8, qword [0x1801eaec8]
mov rcx, qword [rax]
mov rax, qword [r8 + 0x80]
mov edx, dword [rcx]
mov rcx, qword [rax + 0x50]
add edx, 0x3c
mov dword [rcx + 0x63d90], edx
jmp 0x180023e20
mov r8, qword [0x1801eaec8]
cmp byte [r12 + 0x45], r13b
je 0x180023e76
mov rax, qword [r8 + 0x80]
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x158420], 1
call fcn.180023660
mov rcx, rdi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov rax, qword [0x1801eaec8]
mov edx, dword [rcx]
mov rcx, qword [rax + 0x80]
add edx, 0x3c
mov rax, qword [rcx + 0x50]
mov dword [rax + 0x158438], edx
cmp byte [r12 + 0x46], r13b
je 0x180023f14
call fcn.180023660
mov rcx, rbx
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
movsxd rax, dword [rcx]
imul r8, rax, 0x1d2
mov rax, qword [0x1801eaec8]
add r8, 0x288e0b
mov rdx, r8
and r8d, 0x3ffff
shr rdx, 0x12
mov rax, qword [rax + 0x80]
and edx, 0x3f
mov rax, qword [rax + rdx*8]
mov dword [rax + r8*8], 1
call fcn.180023660
mov rcx, rdi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov rax, qword [0x1801eaec8]
mov edx, dword [rcx]
mov rcx, qword [rax + 0x80]
add edx, 0x3c
mov rax, qword [rcx + 0x50]
mov dword [rax + 0x63d98], edx
cmp byte [r12 + 0x47], r13b
je 0x180023faf
call fcn.180023660
mov rcx, rbx
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
movsxd rax, dword [rcx]
imul rdx, rax, 0x35e
mov rax, qword [0x1801eaec8]
add rdx, 0x1c4d17
mov rcx, rdx
and edx, 0x3ffff
shr rcx, 0x12
mov rax, qword [rax + 0x80]
and ecx, 0x3f
mov rax, qword [rax + rcx*8]
mov dword [rax + rdx*8], 0xffffffff
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
movabs rcx, 0x18f621f7a5b1f85d
mov r8d, dword [rax + 8]
mov rdx, qword [rax + 0x10]
mov dword [rdx + r8*8], 1
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
cmp byte [r12 + 0x48], r13b
je 0x180024048
call fcn.180023660
mov rcx, rbx
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
movsxd rax, dword [rcx]
imul rdx, rax, 0x35e
mov rax, qword [0x1801eaec8]
add rdx, 0x1c4d17
mov rcx, rdx
and edx, 0x3ffff
shr rcx, 0x12
mov rax, qword [rax + 0x80]
and ecx, 0x3f
mov rax, qword [rax + rcx*8]
mov dword [rax + rdx*8], 0xffffffff
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
movabs rcx, 0x7e08924259e08ce0
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
movzx edx, byte [r12 + 0x49]
call fcn.18002d030
cmp byte [r12 + 0x4a], r13b
je 0x1800240d6
mov eax, dword [0x1801eb610]
add eax, 0xc
mov dword [0x1801eb610], eax
movd xmm6, eax
cvtdq2ps xmm6, xmm6
call fcn.180023660
mov rcx, rsi
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm6
movabs rcx, 0x8e2530aa8ada980e
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
movzx edx, byte [r12 + 1]
call fcn.18002c990
movzx r15d, byte [r12 + 0xf]
movzx r14d, byte [r12 + 0xe]
movzx ebp, byte [r12 + 0xd]
movzx esi, byte [r12 + 0xc]
movzx edi, byte [r12 + 0xb]
call fcn.180023660
movabs rcx, 0xd80958fc74e988a6
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023500
call fcn.180023660
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180023660
mov dword [rax + 8], r13d
mov dword [rax + 0x18], r13d
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], edi
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], esi
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r14d
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r15d
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r13d
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r13d
inc dword [rax + 8]
call fcn.180023660
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r13d
movabs rcx, 0xfaee099c6f890bb8
inc dword [rax + 8]
call fcn.180023500
call fcn.180023660
cmp byte [r12 + 0x10], r13b
mov r12, qword [rsp + 0x90]
movaps xmm6, xmmword [rsp + 0x70]
mov r15, qword [rsp + 0x80]
mov r14, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x98]
mov rsi, qword [rsp + 0xc8]
mov rbp, qword [rsp + 0xc0]
mov rbx, qword [rsp + 0xb8]
je 0x18002425b
mov rax, qword [0x1801eaec8]
mov rcx, qword [rax + 0x48]
mov rax, qword [rcx]
test rax, rax
je 0x18002424a
mov rax, qword [rax + 8]
jmp 0x18002424d
mov rax, r13
mov rax, qword [rax + 0x10a0]
mov dword [rax + 0x278], r13d
add rsp, 0xa0
pop r13
ret