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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x5ef4c7
mov eax, dword fs:[0]
push eax
sub esp, 0x2e8
push ebx
push esi
push edi
mov eax, dword [0x615cbc]
xor eax, esp
push eax
lea eax, [esp + 0x2f8]
mov dword fs:[0], eax
mov edi, ecx
mov dword [esp + 0x24], edi
lea ecx, [esp + 0x1ac]
call fcn.004e3630
mov esi, dword [ebp + 8]
movq xmm1, qword [esi]
mov ecx, dword [ebp + 0x10]
mov ebx, dword [ecx]
xorps xmm0, xmm0
movq qword [esp + 0x10c], xmm1
movq xmm1, qword [esi + 8]
lea eax, [esi + 0x58]
movq qword [esp + 0x114], xmm1
movq xmm1, qword [eax]
mov ecx, ebx
movq qword [esp + 0x11c], xmm1
movq xmm1, qword [eax + 8]
mov edx, ebx
movsd qword [esp + 0x13c], xmm0
movsd qword [esp + 0x134], xmm0
movsd qword [esp + 0x12c], xmm0
movsd qword [esp + 0x104], xmm0
movsd qword [esp + 0xfc], xmm0
movsd qword [esp + 0xf4], xmm0
mov dword [esp + 0x1c], eax
movq qword [esp + 0x124], xmm1
mov dword [esp + 0x2c], 1
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], edx
cmp ecx, 1
je 0x471940
cmp ecx, 2
je 0x471940
movsd xmm1, qword [esi]
movsd xmm3, qword [edi + 0x30]
movsd xmm4, qword [0x5ff780]
movapd xmm2, xmm1
subsd xmm2, xmm3
movsd xmm3, qword [0x5fc860]
andpd xmm2, xmm3
comisd xmm4, xmm2
ja 0x471939
movsd xmm2, qword [edi + 0x38]
subsd xmm1, xmm2
andpd xmm1, xmm3
comisd xmm4, xmm1
ja 0x471939
movsd xmm1, qword [esi + 8]
movsd xmm5, qword [edi + 0x40]
movapd xmm2, xmm1
subsd xmm2, xmm5
andpd xmm2, xmm3
comisd xmm4, xmm2
ja 0x47192f
movsd xmm2, qword [edi + 0x48]
subsd xmm1, xmm2
andpd xmm1, xmm3
comisd xmm4, xmm1
jbe 0x4719c3
mov edx, 2
jmp 0x4719bc
mov edx, 1
jmp 0x4719bc
movsd xmm1, qword [eax]
mov eax, dword [ebp + 0xc]
movsd xmm3, qword [eax + 0x30]
movsd xmm4, qword [0x5ff780]
movapd xmm2, xmm1
subsd xmm2, xmm3
movsd xmm3, qword [0x5fc860]
andpd xmm2, xmm3
comisd xmm4, xmm2
ja 0x4719b7
movsd xmm2, qword [eax + 0x38]
subsd xmm1, xmm2
andpd xmm1, xmm3
comisd xmm4, xmm1
ja 0x4719b7
movsd xmm1, qword [esi + 0x60]
movsd xmm5, qword [eax + 0x40]
movapd xmm2, xmm1
subsd xmm2, xmm5
andpd xmm2, xmm3
comisd xmm4, xmm2
ja 0x4719b0
movsd xmm2, qword [eax + 0x48]
subsd xmm1, xmm2
andpd xmm1, xmm3
comisd xmm4, xmm1
jbe 0x4719c3
mov edx, 8
jmp 0x4719bc
mov edx, 4
mov dword [esp + 0xa0], edx
cmp edx, ebx
je 0x4719f5
fld qword [0x5ff788]
mov eax, dword [ebp + 0xc]
sub esp, 8
fstp qword [esp]
or edx, ebx
push edx
push eax
push esi
mov ecx, edi
call fcn.0046f4e0
test al, al
jne 0x47225d
xorps xmm0, xmm0
mov dword [esp + 0x2c], 2
cmp dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
jle 0x472309
movsd xmm1, qword [ebp + 0x1c]
mulsd xmm1, qword [0x5fcc60]
mov byte [esp + 0x23], 0
movsd qword [esp + 0x8c], xmm1
mov edx, dword [esp + 0x30]
mov eax, dword [esp + edx*4 + 0x9c]
mov edx, dword [ebp + 0x10]
mov dword [edx], eax
movsd qword [esp + 0x3c], xmm1
movsd xmm1, qword [0x5ff710]
movsd qword [esp + 0xec], xmm0
movsd qword [esp + 0xe4], xmm0
movsd qword [esp + 0xdc], xmm0
movsd qword [esp + 0xbc], xmm0
movsd qword [esp + 0xb4], xmm0
movsd qword [esp + 0xac], xmm0
mov dword [esp + 0x28], 0
mov byte [esp + 0x1b], 0
movsd qword [esp + 0x5c], xmm1
movsd qword [esp + 0x74], xmm0
movsd qword [esp + 0x6c], xmm0
movsd qword [esp + 0x84], xmm0
movsd qword [esp + 0x7c], xmm0
mov cl, byte [ebp + 0x14]
test cl, cl
jne 0x471ab5
cmp byte [ebp + 0x18], cl
je 0x471bfa
mov eax, dword [edx]
cmp eax, 1
jne 0x471ac2
movsd xmm3, qword [esi]
jmp 0x471ae2
cmp eax, 2
jne 0x471ace
movsd xmm3, qword [esi + 8]
jmp 0x471ae2
cmp eax, 4
jne 0x471add
mov ebx, dword [esp + 0x1c]
movsd xmm3, qword [ebx]
jmp 0x471ae6
movsd xmm3, qword [esi + 0x60]
mov ebx, dword [esp + 0x1c]
test cl, cl
mov ecx, dword [esp + 0x24]
je 0x471b5a
cmp dword [ecx + 0xc], 0x32
movsd xmm2, qword [0x5ff780]
je 0x471b5a
movsd xmm1, qword [ecx + 0x30]
movsd xmm0, qword [esi]
movapd xmm4, xmm1
addsd xmm4, xmm2
comisd xmm4, xmm0
ja 0x471b26
movsd xmm1, qword [ecx + 0x38]
movapd xmm4, xmm1
subsd xmm4, xmm2
comisd xmm0, xmm4
jbe 0x471b2a
movsd qword [esi], xmm1
movsd xmm1, qword [ecx + 0x40]
movsd xmm0, qword [esi + 8]
movapd xmm4, xmm2
addsd xmm4, xmm1
comisd xmm4, xmm0
ja 0x471b55
movsd xmm1, qword [ecx + 0x48]
movapd xmm4, xmm1
subsd xmm4, xmm2
comisd xmm0, xmm4
jbe 0x471b5a
movsd qword [esi + 8], xmm1
cmp byte [ebp + 0x18], 0
mov edi, dword [ebp + 0xc]
je 0x471bcf
cmp dword [edi + 0xc], 0x32
movsd xmm2, qword [0x5ff780]
je 0x471bcf
movsd xmm1, qword [edi + 0x30]
movsd xmm0, qword [ebx]
movapd xmm4, xmm1
addsd xmm4, xmm2
comisd xmm4, xmm0
ja 0x471b9b
movsd xmm1, qword [edi + 0x38]
movapd xmm4, xmm1
subsd xmm4, xmm2
comisd xmm0, xmm4
jbe 0x471b9f
movsd qword [ebx], xmm1
movsd xmm1, qword [edi + 0x40]
movsd xmm0, qword [ebx + 8]
movapd xmm4, xmm2
addsd xmm4, xmm1
comisd xmm4, xmm0
ja 0x471bca
movsd xmm1, qword [edi + 0x48]
movapd xmm4, xmm1
subsd xmm4, xmm2
comisd xmm0, xmm4
jbe 0x471bcf
movsd qword [ebx + 8], xmm1
mov eax, dword [edx]
cmp eax, 1
jne 0x471bdc
movsd qword [esi], xmm3
jmp 0x471c05
cmp eax, 2
jne 0x471be8
movsd qword [esi + 8], xmm3
jmp 0x471c05
cmp eax, 4
jne 0x471bf3
movsd qword [ebx], xmm3
jmp 0x471c05
movsd qword [esi + 0x60], xmm3
jmp 0x471c05
mov edi, dword [ebp + 0xc]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
fldz
mov edx, dword [ecx]
mov eax, dword [edx + 0x84]
sub esp, 8
fstp qword [esp]
push esi
push esi
call eax
test al, al
je 0x4725b3
fldz
mov edx, dword [edi]
mov eax, dword [edx + 0x84]
sub esp, 8
fstp qword [esp]
push ebx
push ebx
mov ecx, edi
call eax
test al, al
je 0x4725b3
movsd xmm0, qword [esi + 0x10]
movsd xmm1, qword [esi + 0x18]
movsd xmm2, qword [esi + 0x20]
subsd xmm0, qword [esi + 0x68]
subsd xmm1, qword [esi + 0x70]
subsd xmm2, qword [esi + 0x78]
lea ecx, [esp + 0x12c]
movq qword [esp + 0x12c], xmm0
movq qword [esp + 0x134], xmm1
movq qword [esp + 0x13c], xmm2
call fcn.004a88b0
fst qword [esp + 0x34]
fld qword [ebp + 0x1c]
fcompi st(1)
fstp st(0)
ja 0x4726c2
cmp dword [esp + 0x28], 0
movsd xmm0, qword [esp + 0x34]
je 0x471cae
movsd xmm1, qword [esp + 0x5c]
comisd xmm1, xmm0
jbe 0x471cf0
movq xmm1, qword [esi]
movq qword [esp + 0x6c], xmm1
movq xmm1, qword [esi + 8]
movq qword [esp + 0x74], xmm1
movq xmm1, qword [ebx]
movq qword [esp + 0x7c], xmm1
movq xmm1, qword [ebx + 8]
movq qword [esp + 0x84], xmm1
movsd xmm1, qword [ebp + 0x1c]
comisd xmm1, xmm0
movsd qword [esp + 0x5c], xmm0
ja 0x472137
lea edi, [esi + 0x40]
push edi
lea ecx, [esp + 0x180]
lea ebx, [esi + 0x28]
push ecx
mov ecx, ebx
call fcn.004a8ae0
lea ecx, [esp + 0x17c]
call fcn.004a8b50
fstp st(0)
lea eax, [esi + 0x98]
push eax
lea edx, [esp + 0x198]
lea ecx, [esi + 0x80]
push edx
call fcn.004a8ae0
lea ecx, [esp + 0x194]
call fcn.004a8b50
fstp st(0)
lea eax, [esp + 0x194]
push eax
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esp + 0x184]
call fcn.004a8ae0
lea ecx, [esp + 0x44]
call fcn.004a88b0
fld qword [0x5fa920]
fcompi st(1)
fstp st(0)
ja 0x47212f
cmp dword [esp + 0x28], 0
je 0x471e3b
movsd xmm0, qword [esi + 0x68]
subsd xmm0, qword [esp + 0xac]
movsd qword [esp + 0x44], xmm0
movsd xmm0, qword [esi + 0x70]
subsd xmm0, qword [esp + 0xb4]
movsd qword [esp + 0x4c], xmm0
movsd xmm0, qword [esi + 0x78]
subsd xmm0, qword [esp + 0xbc]
movsd qword [esp + 0x54], xmm0
movsd xmm0, qword [esi + 0x10]
subsd xmm0, qword [esp + 0xdc]
movsd qword [esp + 0x164], xmm0
movsd xmm0, qword [esi + 0x18]
subsd xmm0, qword [esp + 0xe4]
movsd qword [esp + 0x16c], xmm0
movsd xmm0, qword [esi + 0x20]
subsd xmm0, qword [esp + 0xec]
lea ecx, [esp + 0x164]
movsd qword [esp + 0x174], xmm0
call fcn.004a88b0
fstp qword [esp + 0x34]
lea ecx, [esp + 0x44]
call fcn.004a88b0
fst qword [esp + 0xcc]
fld qword [esp + 0x34]
fcompi st(1)
fstp st(0)
jbe 0x471e2c
movsd xmm0, qword [esp + 0x34]
jmp 0x471e35
movsd xmm0, qword [esp + 0xcc]
movsd qword [esp + 0x3c], xmm0
movsd xmm0, qword [esp + 0x3c]
comisd xmm0, xmmword [0x5ff778]
jbe 0x472105
mov edx, dword [ebp + 0x10]
mov eax, dword [edx]
dec eax
cmp eax, 7
ja case.0x471e5e.3
jmp dword [eax*4 + 0x4726dc]
lea eax, [esi + 0x98]
push eax
lea eax, [esi + 0x80]
push eax
lea eax, [esp + 0x4c]
push eax
mov ecx, edi
jmp 0x471ed6
lea eax, [esi + 0x98]
push eax
lea eax, [esi + 0x80]
push eax
lea ecx, [esp + 0x16c]
push ecx
jmp 0x471ed4
lea eax, [esi + 0x98]
push eax
lea edx, [esp + 0x2b0]
push edx
mov ecx, edi
call fcn.004a8d80
push eax
lea eax, [esp + 0x284]
push eax
jmp 0x471ed4
lea eax, [esi + 0x80]
push eax
lea ecx, [esp + 0x298]
push ecx
mov ecx, edi
call fcn.004a8d80
push eax
lea edx, [esp + 0x14c]
push edx
mov ecx, ebx
call fcn.004a8d80
push eax
lea ecx, [esp + 0x1b8]
call fcn.004e3680
lea ecx, [esp + 0x1ac]
call fcn.004e3a80
fabs
fld qword [0x5ff778]
fcompi st(1)
fstp st(0)
ja 0x4721e7
lea eax, [esp + 0x1ac]
push eax
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esp + 0x134]
call fcn.004a8910
cmp dword [esp + 0x28], 0
movsd xmm2, qword [esp + 0x44]
movsd xmm0, qword [esp + 0x4c]
movsd xmm1, qword [esp + 0x54]
movsd xmm3, qword [0x5ff780]
je 0x471fca
movsd xmm5, qword [esp + 0xf4]
movsd xmm6, qword [0x5fc860]
movapd xmm4, xmm2
addsd xmm4, xmm5
andpd xmm4, xmm6
comisd xmm3, xmm4
jbe 0x471fca
movsd xmm4, qword [esp + 0xfc]
movapd xmm7, xmm0
addsd xmm7, xmm4
andpd xmm7, xmm6
comisd xmm3, xmm7
jbe 0x471fca
movsd xmm3, qword [esp + 0x104]
movapd xmm7, xmm1
addsd xmm7, xmm3
andpd xmm7, xmm6
movsd xmm6, qword [0x5ff780]
comisd xmm6, xmm7
jbe 0x471fca
addsd xmm1, xmm3
movsd xmm3, qword [0x5fb9c8]
addsd xmm2, xmm5
addsd xmm0, xmm4
mulsd xmm2, xmm3
mulsd xmm0, xmm3
mulsd xmm1, xmm3
mov byte [esp + 0x1b], 1
mov edx, dword [ebp + 0x10]
mov eax, dword [edx]
movdqa xmm3, xmm2
movsd qword [esp + 0xf4], xmm3
movdqa xmm3, xmm0
dec eax
movsd qword [esp + 0xfc], xmm3
movdqa xmm3, xmm1
movsd qword [esp + 0x104], xmm3
cmp eax, 7
ja case.0x472000.3
jmp dword [eax*4 + 0x4726fc]
movsd xmm3, qword [esi + 8]
mov eax, dword [esp + 0x1c]
addsd xmm3, xmm2
movsd xmm2, qword [eax]
addsd xmm0, xmm2
movsd qword [eax], xmm0
movsd xmm0, qword [esi + 0x60]
addsd xmm1, xmm0
movsd qword [esi + 8], xmm3
movsd qword [esi + 0x60], xmm1
jmp case.0x472000.3
mov eax, dword [esp + 0x1c]
movsd xmm3, qword [esi]
addsd xmm3, xmm2
movsd xmm2, qword [eax]
addsd xmm0, xmm2
movsd qword [eax], xmm0
movsd xmm0, qword [esi + 0x60]
addsd xmm1, xmm0
movsd qword [esi + 0x60], xmm1
jmp 0x4720a9
movsd xmm3, qword [esi]
addsd xmm3, xmm2
movsd xmm2, qword [esi + 8]
addsd xmm0, xmm2
movsd qword [esi + 8], xmm0
movsd xmm0, qword [esi + 0x60]
addsd xmm1, xmm0
movsd qword [esi + 0x60], xmm1
jmp 0x4720a9
movsd xmm3, qword [esi]
mov eax, dword [esp + 0x1c]
addsd xmm3, xmm2
movsd xmm2, qword [esi + 8]
addsd xmm0, xmm2
movsd qword [esi + 8], xmm0
movsd xmm0, qword [eax]
addsd xmm1, xmm0
movsd qword [eax], xmm1
movsd qword [esi], xmm3
movq xmm0, qword [esi + 0x10]
inc dword [esp + 0x28]
movsd qword [esp + 0xdc], xmm0
movq xmm0, qword [esi + 0x18]
movsd qword [esp + 0xe4], xmm0
movq xmm0, qword [esi + 0x20]
movsd qword [esp + 0xec], xmm0
movq xmm0, qword [esi + 0x68]
movsd qword [esp + 0xac], xmm0
movq xmm0, qword [esi + 0x70]
movsd qword [esp + 0xb4], xmm0
movq xmm0, qword [esi + 0x78]
movsd qword [esp + 0xbc], xmm0
cmp byte [esp + 0x1b], 0
jne 0x472137
cmp dword [esp + 0x28], 0x14
jge 0x4721ab
movsd xmm0, qword [esp + 0x3c]
comisd xmm0, xmmword [0x5ff778]
jbe 0x472137
mov edx, dword [ebp + 0x10]
jmp 0x471aa5
mov dword [esp + 0x28], 0x14
cmp dword [esp + 0x28], 0x14
jge 0x4721ab
cmp byte [esp + 0x1b], 0
jne 0x47225d
movsd xmm0, qword [esi + 0x10]
subsd xmm0, qword [esi + 0x68]
movsd qword [esp + 0x44], xmm0
movsd xmm0, qword [esi + 0x18]
subsd xmm0, qword [esi + 0x70]
movsd qword [esp + 0x4c], xmm0
movsd xmm0, qword [esi + 0x20]
subsd xmm0, qword [esi + 0x78]
lea ecx, [esp + 0x44]
movsd qword [esp + 0x54], xmm0
call fcn.004a88b0
fld qword [0x5ff758]
fmul qword [0x5fd068]
fxch st(1)
fcompi st(1)
fstp st(0)
jbe 0x47225d
mov eax, dword [esp + 0x2c]
dec eax
cmp dword [esp + 0x30], eax
je 0x4725b3
jmp 0x4721c3
movsd xmm0, qword [0x5ff758]
mulsd xmm0, qword [0x5fd068]
comisd xmm0, xmmword [esp + 0x5c]
ja 0x4721ec
mov eax, dword [esp + 0x30]
xorps xmm0, xmm0
inc eax
cmp eax, dword [esp + 0x2c]
mov dword [esp + 0x30], eax
jge 0x472309
movsd xmm1, qword [esp + 0x8c]
jmp 0x471a23
mov byte [esp + 0x23], 1
movq xmm0, qword [esp + 0x6c]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
movq qword [esi], xmm0
movq xmm0, qword [esp + 0x74]
movq qword [esi + 8], xmm0
movq xmm0, qword [esp + 0x7c]
movq qword [eax], xmm0
movq xmm0, qword [esp + 0x84]
movq qword [eax + 8], xmm0
movsd xmm0, qword [ebp + 0x1c]
comisd xmm0, xmmword [esp + 0x5c]
mov edx, dword [ecx]
jbe 0x472277
fldz
mov eax, dword [edx + 0x84]
sub esp, 8
fstp qword [esp]
push esi
push esi
call eax
fldz
mov eax, dword [esp + 0x1c]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
sub esp, 8
fstp qword [esp]
push eax
push eax
mov eax, dword [edx + 0x84]
call eax
mov al, 1
mov ecx, dword [esp + 0x2f8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov edx, dword [edx + 0x74]
push esi
lea eax, [esp + 0x198]
push eax
call edx
mov edx, dword [esp + 0x1c]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x74]
push edx
lea edx, [esp + 0x180]
push edx
call eax
lea ecx, [esp + 0x17c]
push ecx
lea edx, [esp + 0x48]
push edx
lea ecx, [esp + 0x19c]
call fcn.004a8ae0
lea ecx, [esp + 0x44]
call fcn.004a88b0
fld qword [0x5fc898]
fxch st(1)
fcompi st(1)
fstp st(0)
jbe 0x4725b3
cmp byte [esp + 0x23], 0
jne 0x4725b3
movsd xmm0, qword [0x5ff758]
comisd xmm0, xmmword [esp + 0x5c]
jbe 0x4725b3
mov al, 1
mov ecx, dword [esp + 0x2f8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
xor edi, edi
cmp dword [esp + 0x2c], edi
jle 0x4725b3
mov ebx, dword [ebp + 0xc]
jmp 0x472323
xorps xmm0, xmm0
mov ecx, dword [ebp + 0x10]
mov eax, dword [esp + edi*4 + 0x9c]
movsd xmm1, qword [0x5fb270]
mov dword [ecx], eax
xor ecx, ecx
mov byte [esp + 0x70], 1
mov dword [esp + 0x74], ecx
mov dword [esp + 0x6c], vtable.CGeom2d_Point.0
mov dword [esp + 0x78], 0xa
mov dword [esp + 0x300], ecx
movsd qword [esp + 0x94], xmm0
movsd qword [esp + 0x8c], xmm0
cmp eax, 1
je 0x47245e
cmp eax, 2
je 0x47245e
movq xmm0, qword [esp + 0x11c]
movq qword [esp + 0x7c], xmm0
movq xmm0, qword [esp + 0x124]
movq qword [esp + 0x84], xmm0
test al, 4
je 0x4723ad
movsd qword [esp + 0x94], xmm1
jmp 0x4723b6
movsd qword [esp + 0x8c], xmm1
lea edx, [esp + 0x8c]
push edx
lea eax, [esp + 0x70]
push eax
lea ecx, [esp + 0x1fc]
call fcn.004ac6b0
fld qword [ebp + 0x1c]
mov eax, dword [esp + 0x24]
xorps xmm0, xmm0
sub esp, 8
fstp qword [esp]
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0xd8]
push edx
push eax
movsd qword [esp + 0x50], xmm0
movq xmm0, qword [esp + 0x120]
push ebx
lea ecx, [esp + 0x20c]
movq qword [esp + 0xe4], xmm0
movq xmm0, qword [esp + 0x12c]
push ecx
lea ecx, [esp + 0xc8]
mov byte [esp + 0x31c], 3
movq qword [esp + 0xf0], xmm0
call fcn.00569db0
cmp byte [esp + 0xc4], 0
mov byte [esp + 0x300], 4
jne 0x472551
mov byte [esp + 0x300], 3
lea ecx, [esp + 0xac]
jmp 0x472534
movq xmm0, qword [esp + 0x10c]
movq qword [esp + 0x7c], xmm0
movq xmm0, qword [esp + 0x114]
movq qword [esp + 0x84], xmm0
test al, 1
je 0x47248e
movsd qword [esp + 0x94], xmm1
jmp 0x472497
movsd qword [esp + 0x8c], xmm1
lea edx, [esp + 0x8c]
push edx
lea eax, [esp + 0x70]
push eax
lea ecx, [esp + 0x1fc]
call fcn.004ac6b0
fld qword [ebp + 0x1c]
xorps xmm0, xmm0
mov eax, dword [esp + 0x24]
sub esp, 8
fstp qword [esp]
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x68]
push edx
push ebx
movsd qword [esp + 0x48], xmm0
movq xmm0, qword [esp + 0x130]
push eax
lea ecx, [esp + 0x20c]
movq qword [esp + 0x74], xmm0
movq xmm0, qword [esp + 0x13c]
push ecx
lea ecx, [esp + 0x160]
mov byte [esp + 0x31c], 1
movq qword [esp + 0x80], xmm0
call fcn.00569db0
cmp byte [esp + 0x15c], 0
mov byte [esp + 0x300], 2
jne 0x472617
mov byte [esp + 0x300], 1
lea ecx, [esp + 0x144]
call fcn.004010e0
inc edi
cmp edi, dword [esp + 0x2c]
mov dword [esp + 0x300], 0xffffffff
jl 0x472320
jmp 0x4725b3
fld qword [esp + 0x3c]
sub esp, 8
lea edx, [esp + 0xa4]
fstp qword [esp]
push edx
lea ecx, [esp + 0x200]
call fcn.004acdd0
fldz
mov ecx, dword [esp + 0x1c]
movq xmm0, qword [eax]
movq qword [ecx], xmm0
movq xmm0, qword [eax + 8]
sub esp, 8
fstp qword [esp]
movq qword [ecx + 8], xmm0
mov eax, dword [ebx]
mov edx, dword [eax + 0x84]
push ecx
push ecx
mov ecx, ebx
call edx
test al, al
jne 0x4725cd
mov byte [esp + 0x300], 3
lea ecx, [esp + 0xac]
call fcn.004010e0
xor al, al
mov ecx, dword [esp + 0x2f8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
movq xmm0, qword [esp + 0xcc]
fldz
movq qword [esi], xmm0
movq xmm0, qword [esp + 0xd4]
sub esp, 8
fstp qword [esp]
movq qword [esi + 8], xmm0
mov eax, dword [ebx]
mov edx, dword [eax + 0x84]
push esi
push esi
mov ecx, ebx
call edx
mov byte [esp + 0x300], 3
lea ecx, [esp + 0xac]
test al, al
jne 0x4726bd
jmp 0x4725ae
fld qword [esp + 0x34]
sub esp, 8
lea eax, [esp + 0xa4]
fstp qword [esp]
push eax
lea ecx, [esp + 0x200]
call fcn.004acdd0
fldz
movq xmm0, qword [eax]
mov ecx, dword [esp + 0x24]
movq qword [esi], xmm0
movq xmm0, qword [eax + 8]
sub esp, 8
fstp qword [esp]
movq qword [esi + 8], xmm0
mov edx, dword [ecx]
mov eax, dword [edx + 0x84]
push esi
push esi
call eax
test al, al
jne 0x472677
mov byte [esp + 0x300], 1
lea ecx, [esp + 0x144]
jmp 0x4725ae
mov eax, dword [esp + 0x1c]
fldz
movq xmm0, qword [esp + 0x5c]
movq qword [eax], xmm0
movq xmm0, qword [esp + 0x64]
sub esp, 8
fstp qword [esp]
movq qword [eax + 8], xmm0
mov edx, dword [ebx]
push eax
push eax
mov eax, dword [edx + 0x84]
mov ecx, ebx
call eax
mov byte [esp + 0x300], 1
lea ecx, [esp + 0x144]
test al, al
je 0x4725ae
call fcn.004010e0
mov al, 1
mov ecx, dword [esp + 0x2f8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c