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

Disassembly:
sub rsp, 0x118
mov rax, qword [0x1403ee900]
xor rax, rsp
mov qword [rsp + 0x108], rax
mov rax, qword [0x140408848]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
add rax, 8
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xc5], 0
mov rax, qword [rsp + 0x58]
mov eax, dword [rax]
and eax, 2
test eax, eax
je 0x1400d6233
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x1400d6233
mov byte [rsp + 0x3b], 1
jmp 0x1400d6238
mov byte [rsp + 0x3b], 0
movzx eax, byte [rsp + 0x3b]
mov byte [rsp + 0x38], al
mov dword [rsp + 0xe8], 0x27a
mov dword [rsp + 0xec], 0x279
mov dword [rsp + 0xf0], 0x27b
mov dword [rsp + 0xf4], 0x27c
mov dword [rsp + 0xf8], 0x27e
mov dword [rsp + 0xfc], 0x27d
mov dword [rsp + 0x100], 0x27f
mov dword [rsp + 0x104], 0x280
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x1400d6337
lea rax, [rsp + 0xe8]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x98]
add rax, 0x20
mov qword [rsp + 0xa8], rax
jmp 0x1400d62f0
mov rax, qword [rsp + 0x80]
add rax, 4
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0x80], rax
je 0x1400d6337
mov rax, qword [rsp + 0x80]
mov eax, dword [rax]
mov dword [rsp + 0x94], eax
mov ecx, dword [rsp + 0x94]
call fcn.1400d15f0
movzx eax, al
test eax, eax
je 0x1400d6335
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b3c], 3
jmp 0x1400d62dc
mov rax, qword [rsp + 0x58]
mov eax, dword [rax]
and eax, 1
test eax, eax
je 0x1400d634c
mov byte [rsp + 0x3c], 1
jmp 0x1400d6351
mov byte [rsp + 0x3c], 0
movzx eax, byte [rsp + 0x3c]
mov byte [rsp + 0x39], al
mov dword [rsp + 0xc8], 0x20c
mov dword [rsp + 0xcc], 0x20d
mov dword [rsp + 0xd0], 0x20e
mov dword [rsp + 0xd4], 0x202
mov dword [rsp + 0xd8], 0x201
mov dword [rsp + 0xdc], 0x203
mov dword [rsp + 0xe0], 0x204
movzx eax, byte [rsp + 0x39]
test eax, eax
je 0x1400d6445
lea rax, [rsp + 0xc8]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0xa0]
add rax, 0x1c
mov qword [rsp + 0xb0], rax
jmp 0x1400d63fe
mov rax, qword [rsp + 0x88]
add rax, 4
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0xb0]
cmp qword [rsp + 0x88], rax
je 0x1400d6445
mov rax, qword [rsp + 0x88]
mov eax, dword [rax]
mov dword [rsp + 0x90], eax
mov ecx, dword [rsp + 0x90]
call fcn.1400d15f0
movzx eax, al
test eax, eax
je 0x1400d6443
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b3c], 2
jmp 0x1400d63ea
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b28], 0
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x4b60], 0
je 0x1400d6467
call fcn.1400d45f0
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x4b55], 0
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x4b56], 0
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b60], 0
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x4b98]
test eax, eax
je 0x1400d64a3
call fcn.1400d48d0
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4bdc], 0
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x4b99], 0
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x4b98], 0
mov byte [rsp + 0x3a], 0
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x4b51]
test eax, eax
je 0x1400d6523
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x4b50]
test eax, eax
je 0x1400d6523
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x4b52]
test eax, eax
jne 0x1400d6523
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x4b53]
test eax, eax
je 0x1400d6523
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4b08], 0
je 0x1400d6523
mov byte [rsp + 0x3a], 1
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x4b51], 0
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4b08], 0
je 0x1400d654f
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax + 0x4b08]
call fcn.1400d5ad0
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4b08], 0
je 0x1400d6599
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x4b08]
cmp qword [rax + 0x3a8], 0
je 0x1400d6599
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x4b40], 0
jne 0x1400d6599
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x4b08]
mov qword [rax + 0x3a8], 0
call fcn.1400d8580
movzx eax, byte [rsp + 0x39]
test eax, eax
jne 0x1400d65b0
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x1400d65e1
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4b08], 0
je 0x1400d65e1
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x4b08]
mov eax, dword [rax + 0x14]
and eax, 0x10000
test eax, eax
jne 0x1400d65e1
mov dword [rsp + 0x74], 1
jmp 0x1400d65e9
mov dword [rsp + 0x74], 0
mov rax, qword [rsp + 0x58]
movzx ecx, byte [rsp + 0x74]
mov byte [rax + 0xc7], cl
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xc7]
test eax, eax
je 0x1400d6627
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x4b10], 0
je 0x1400d6627
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x4b52]
test eax, eax
je 0x1400d6640
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4ce8], 0
jne 0x1400d6640
mov dword [rsp + 0x78], 0
jmp 0x1400d6648
mov dword [rsp + 0x78], 1
mov rax, qword [rsp + 0x58]
movzx ecx, byte [rsp + 0x78]
mov byte [rax + 0xc8], cl
call fcn.1400d6e50
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b20], 0
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b1c], 0
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b18], 0
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b24], 0
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x4b10], 0
je 0x1400d698f
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x4b52]
test eax, eax
jne 0x1400d698f
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4ce8], 0
jne 0x1400d698f
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4b08], 0
je 0x1400d698f
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x4b08]
mov eax, dword [rax + 0x14]
and eax, 0x10000
test eax, eax
jne 0x1400d698f
movzx eax, byte [rsp + 0x39]
test eax, eax
je 0x1400d671b
mov ecx, 0x20c
call fcn.1400d15f0
movzx eax, al
test eax, eax
jne 0x1400d673c
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x1400d6735
mov ecx, 0x27c
call fcn.1400d15f0
movzx eax, al
test eax, eax
jne 0x1400d673c
mov byte [rsp + 0x3d], 0
jmp 0x1400d6741
mov byte [rsp + 0x3d], 1
movzx eax, byte [rsp + 0x3d]
mov byte [rsp + 0x41], al
movzx eax, byte [rsp + 0x41]
test eax, eax
je 0x1400d6792
movzx eax, byte [rsp + 0x39]
test eax, eax
je 0x1400d676f
xor edx, edx
mov ecx, 0x20c
call fcn.1400d1890
movzx eax, al
test eax, eax
jne 0x1400d678b
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x1400d6792
xor edx, edx
mov ecx, 0x27c
call fcn.1400d1890
movzx eax, al
test eax, eax
je 0x1400d6792
mov byte [rsp + 0x3e], 1
jmp 0x1400d6797
mov byte [rsp + 0x3e], 0
movzx eax, byte [rsp + 0x3e]
mov byte [rsp + 0x43], al
movzx eax, byte [rsp + 0x39]
test eax, eax
je 0x1400d67cb
mov ecx, 0x20d
call fcn.1400d15f0
movzx eax, al
test eax, eax
jne 0x1400d67ec
mov ecx, 0x273
call fcn.1400d15f0
movzx eax, al
test eax, eax
jne 0x1400d67ec
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x1400d67e5
mov ecx, 0x27b
call fcn.1400d15f0
movzx eax, al
test eax, eax
jne 0x1400d67ec
mov byte [rsp + 0x3f], 0
jmp 0x1400d67f1
mov byte [rsp + 0x3f], 1
movzx eax, byte [rsp + 0x3f]
mov byte [rsp + 0x42], al
movzx eax, byte [rsp + 0x42]
test eax, eax
je 0x1400d6855
movzx eax, byte [rsp + 0x39]
test eax, eax
je 0x1400d6832
xor edx, edx
mov ecx, 0x20d
call fcn.1400d1890
movzx eax, al
test eax, eax
jne 0x1400d684e
xor edx, edx
mov ecx, 0x273
call fcn.1400d1890
movzx eax, al
test eax, eax
jne 0x1400d684e
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x1400d6855
xor edx, edx
mov ecx, 0x27b
call fcn.1400d1890
movzx eax, al
test eax, eax
je 0x1400d6855
mov byte [rsp + 0x40], 1
jmp 0x1400d685a
mov byte [rsp + 0x40], 0
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x44], al
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x406c], 0
jne 0x1400d689f
movzx eax, byte [rsp + 0x43]
test eax, eax
je 0x1400d689f
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b10]
mov dword [rax + 0x4b18], ecx
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b24], 2
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x406c], 0
je 0x1400d68c5
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b10]
cmp dword [rax + 0x406c], ecx
jne 0x1400d68f3
movzx eax, byte [rsp + 0x44]
test eax, eax
je 0x1400d68f3
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b10]
mov dword [rax + 0x4b18], ecx
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b24], 1
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x406c], 0
je 0x1400d6919
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b10]
cmp dword [rax + 0x406c], ecx
jne 0x1400d6941
movzx eax, byte [rsp + 0x41]
test eax, eax
jne 0x1400d692b
movzx eax, byte [rsp + 0x42]
test eax, eax
je 0x1400d6941
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b10]
mov dword [rax + 0x4b1c], ecx
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x406c], 0
je 0x1400d6967
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b10]
cmp dword [rax + 0x406c], ecx
jne 0x1400d698f
movzx eax, byte [rsp + 0x43]
test eax, eax
jne 0x1400d6979
movzx eax, byte [rsp + 0x44]
test eax, eax
je 0x1400d698f
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b10]
mov dword [rax + 0x4b20], ecx
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4b08], 0
je 0x1400d69c2
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x4b08]
mov eax, dword [rax + 0x14]
and eax, 0x10000
test eax, eax
je 0x1400d69c2
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x4b52], 1
mov rax, qword [rsp + 0x30]
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x4b34], 0
je 0x1400d6a2d
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b34]
mov dword [rax + 0x4b20], ecx
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b20]
mov dword [rax + 0x4b1c], ecx
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b1c]
mov dword [rax + 0x4b18], ecx
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx + 0x4b38]
mov dword [rax + 0x4b24], ecx
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4b34], 0
call fcn.1400d7150
mov rax, qword [rsp + 0x30]
cmp dword [rax + 0x4ba8], 0xffffffff
jne 0x1400d6a54
call fcn.1400d7c00
call fcn.1400d6de0
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x4b50], 0
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4b08], 0
je 0x1400d6d3f
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x4b08]
mov eax, dword [rax + 0x14]
and eax, 0x10000
test eax, eax
jne 0x1400d6d3f
mov rax, qword [rsp + 0x30]
cmp qword [rax + 0x4ce8], 0
jne 0x1400d6d3f
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x4b08]
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x50]
call fcn.1400c5400
mulss xmm0, dword [0x140258814]
mov rax, qword [rsp + 0x58]
mulss xmm0, dword [rax + 0x10]
addss xmm0, dword [0x14026fe80]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0x60], xmm0
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x4ba8]
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x50]
movsx eax, word [rax + 0x16c]
test eax, eax
jne 0x1400d6bf6
mov rax, qword [rsp + 0x50]
movzx eax, byte [rax + 0x172]
test eax, eax
je 0x1400d6bf6
cmp dword [rsp + 0x48], 0xffffffff
je 0x1400d6bf6
cmp dword [rsp + 0x48], 0
je 0x1400d6b3a
cmp dword [rsp + 0x48], 1
jne 0x1400d6b91
cmp dword [rsp + 0x48], 0
jne 0x1400d6b51
movss xmm0, dword [0x14026ff04]
movss dword [rsp + 0x7c], xmm0
jmp 0x1400d6b5f
movss xmm0, dword [0x14025878c]
movss dword [rsp + 0x7c], xmm0
movss xmm0, dword [rsp + 0x7c]
mulss xmm0, dword [rsp + 0x60]
mov rax, qword [rsp + 0x50]
movss xmm1, dword [rax + 0x8c]
addss xmm1, xmm0
movaps xmm0, xmm1
call fcn.1400d0940
movaps xmm1, xmm0
mov rcx, qword [rsp + 0x50]
call fcn.1400e1150
cmp dword [rsp + 0x48], 2
je 0x1400d6b9f
cmp dword [rsp + 0x48], 3
jne 0x1400d6bf6
cmp dword [rsp + 0x48], 2
jne 0x1400d6bb6
movss xmm0, dword [0x14026ff04]
movss dword [rsp + 0x64], xmm0
jmp 0x1400d6bc4
movss xmm0, dword [0x14025878c]
movss dword [rsp + 0x64], xmm0
movss xmm0, dword [rsp + 0x64]
mulss xmm0, dword [rsp + 0x60]
mov rax, qword [rsp + 0x50]
movss xmm1, dword [rax + 0x90]
addss xmm1, xmm0
movaps xmm0, xmm1
call fcn.1400d0940
movaps xmm1, xmm0
mov rcx, qword [rsp + 0x50]
call fcn.1400e1190
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x1400d6d3f
mov dword [rsp + 0x20], 0x28a
mov r9d, 0x289
mov r8d, 0x288
mov edx, 0x287
lea rcx, [rsp + 0xc0]
call fcn.1400cd200
mov ecx, 0x281
call fcn.1400d15f0
movzx eax, al
test eax, eax
je 0x1400d6c4a
movss xmm0, dword [0x140258728]
movss dword [rsp + 0x6c], xmm0
jmp 0x1400d6c85
mov ecx, 0x282
call fcn.1400d15f0
movzx eax, al
test eax, eax
je 0x1400d6c6b
movss xmm0, dword [0x1402587b8]
movss dword [rsp + 0x68], xmm0
jmp 0x1400d6c79
movss xmm0, dword [0x14025878c]
movss dword [rsp + 0x68], xmm0
movss xmm0, dword [rsp + 0x68]
movss dword [rsp + 0x6c], xmm0
movss xmm0, dword [rsp + 0x6c]
movss dword [rsp + 0x70], xmm0
movss xmm0, dword [rsp + 0xc0]
ucomiss xmm0, dword [0x140258710]
jp 0x1400d6ca5
je 0x1400d6cf0
mov rax, qword [rsp + 0x50]
movzx eax, byte [rax + 0xbc]
test eax, eax
je 0x1400d6cf0
movss xmm0, dword [rsp + 0xc0]
mulss xmm0, dword [rsp + 0x60]
mulss xmm0, dword [rsp + 0x70]
mov rax, qword [rsp + 0x50]
movss xmm1, dword [rax + 0x8c]
addss xmm1, xmm0
movaps xmm0, xmm1
call fcn.1400d0940
movaps xmm1, xmm0
mov rcx, qword [rsp + 0x50]
call fcn.1400e1150
movss xmm0, dword [rsp + 0xc4]
ucomiss xmm0, dword [0x140258710]
jp 0x1400d6d04
je 0x1400d6d3f
movss xmm0, dword [rsp + 0xc4]
mulss xmm0, dword [rsp + 0x60]
mulss xmm0, dword [rsp + 0x70]
mov rax, qword [rsp + 0x50]
movss xmm1, dword [rax + 0x90]
addss xmm1, xmm0
movaps xmm0, xmm1
call fcn.1400d0940
movaps xmm1, xmm0
mov rcx, qword [rsp + 0x50]
call fcn.1400e1190
movzx eax, byte [rsp + 0x39]
test eax, eax
jne 0x1400d6d72
movzx eax, byte [rsp + 0x38]
test eax, eax
jne 0x1400d6d72
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x4b52], 1
mov byte [rsp + 0x3a], 0
mov rax, qword [rsp + 0x30]
movzx ecx, byte [rsp + 0x3a]
mov byte [rax + 0x4b53], cl
movzx eax, byte [rsp + 0x3a]
test eax, eax
je 0x1400d6dad
mov rax, qword [rsp + 0x58]
mov eax, dword [rax]
and eax, 4
test eax, eax
je 0x1400d6dad
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 4]
and eax, 4
test eax, eax
je 0x1400d6dad
lea rcx, [rsp + 0xb8]
call fcn.1400d4220
mov rcx, rax
call fcn.1400e1c70
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x4bd4], 0
mov rcx, qword [rsp + 0x108]
xor rcx, rsp
call fcn.140248f60
add rsp, 0x118
ret