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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x74
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push edi
test ebx, ebx
jle 0x4daa89
mov esi, dword [ebp + 0x14]
test esi, esi
jle 0x4daa89
mov edx, dword [ebp + 0x18]
test edx, edx
jle 0x4daa89
mov eax, dword [ebp + 0x1c]
xorps xmm1, xmm1
comisd xmm1, xmmword [eax]
ja 0x4daa89
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, ebx
imul eax, esi
sar ecx, 3
imul eax, edx
cmp ecx, eax
jne 0x4daa7d
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, esi
imul eax, edx
cmp ecx, eax
jne 0x4daa7d
push 0x75acb4
mov ecx, 0x75acb4
call fcn.004e2170
test al, al
je 0x4da297
push 0x75aca8
mov ecx, 0x75acb4
call fcn.004e2170
test al, al
jne 0x4daa7d
mov eax, dword [ebp + 0x28]
mov ecx, 0x75acb4
push 0x75aca8
mov byte [esp + 0x20], 0
mov byte [eax], 0
mov eax, dword [ebp + 0x2c]
mov byte [eax], 0
mov eax, dword [ebp + 0x30]
mov byte [eax], 0
call fcn.004e2150
mov dl, byte [ebp + 0x20]
xor ch, ch
movsd xmm6, qword [0x6be2d0]
mov cl, 1
mov byte [esp + 0x12], cl
mov byte [esp + 0x11], ch
movsd qword [esp + 0x50], xmm6
test dl, dl
je 0x4da335
mov esi, dword [ebp + 0x24]
test al, al
je 0x4da309
movsd xmm1, qword [esi]
movsd xmm0, qword [0x6be2c0]
comisd xmm0, xmm1
ja 0x4daa89
comisd xmm1, xmmword [0x6be280]
ja 0x4daa89
movsd xmm7, qword [esi]
movsd qword [esp + 0x48], xmm7
movsd qword [esp + 0x78], xmm7
test al, al
je 0x4da362
movsd xmm0, qword [0x6be2a8]
movsd xmm2, qword [0x6be258]
movsd qword [esp + 0x58], xmm0
jmp 0x4da398
test al, al
je 0x4da35f
movsd xmm7, qword [0x6be2c0]
movsd xmm0, qword [0x6be2a8]
movsd xmm2, qword [0x6be258]
movsd qword [esp + 0x48], xmm7
movsd qword [esp + 0x58], xmm0
jmp 0x4da398
movaps xmm7, xmm6
movsd xmm0, qword [0x6be2b8]
movsd qword [esp + 0x48], xmm7
movsd qword [esp + 0x58], xmm0
test al, al
je 0x4da384
movsd xmm2, qword [0x6be258]
jmp 0x4da398
movsd xmm2, qword [0x6be278]
movsd qword [esp + 0x50], xmm6
movsd qword [esp + 0x48], xmm7
movsd xmm5, qword [0x6be290]
xor edi, edi
mov dword [esp + 0x18], edi
xor esi, esi
mov edi, ebx
mov dword [esp + 0x14], esi
imul edi, dword [ebp + 0x14]
xor eax, eax
movsd qword [esp + 0x40], xmm5
movsd qword [esp + 0x60], xmm2
mov dword [esp + 0x2c], eax
shl edi, 3
mov dword [esp + 0x3c], edi
mov edi, dword [ebp + 0x18]
mov dword [esp + 0x38], edi
jmp 0x4da3e3
mov cl, byte [esp + 0x12]
mov dl, byte [ebp + 0x20]
mov ch, byte [esp + 0x11]
mov eax, dword [esp + 0x2c]
mov edi, dword [ebp + 8]
movsd xmm1, qword [0x6be228]
mov edi, dword [edi]
add edi, eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x20], edi
mov dword [esp + 0x30], eax
nop dword [eax]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
cmp byte [esi + eax], 0
je 0x4da63e
inc dword [esp + 0x18]
xor esi, esi
cmp ebx, 1
jg 0x4da456
nop word [eax + eax]
movsd xmm0, qword [edi]
ucomisd xmm0, xmm0
movsd qword [esp + 0x68], xmm0
setp al
cmp al, 1
jne 0x4da55c
mov ch, al
inc esi
mov byte [esp + 0x11], ch
jmp 0x4da56f
movsd xmm5, qword [esp + 0x40]
movsd xmm0, qword [edi]
ucomisd xmm0, xmm0
movsd qword [esp + 0x68], xmm0
setp al
cmp al, 1
jne 0x4da4da
mov ch, al
inc esi
mov byte [esp + 0x11], ch
test dl, dl
je 0x4da47e
movsd qword [edi], xmm7
mov ch, byte [esp + 0x11]
movsd xmm6, qword [esp + 0x50]
add edi, 8
movsd xmm7, qword [esp + 0x48]
movsd xmm1, qword [0x6be228]
sub ebx, 1
jne 0x4da450
movsd xmm0, qword [esp + 0x40]
movsd qword [esp + 0x40], xmm0
movsd xmm0, qword [esp + 0x60]
movsd qword [esp + 0x60], xmm0
movaps xmm0, xmm7
movsd qword [esp + 0x48], xmm0
movsd xmm0, qword [esp + 0x58]
mov byte [esp + 0x12], cl
mov byte [esp + 0x11], ch
movsd qword [esp + 0x50], xmm6
movsd qword [esp + 0x58], xmm0
jmp 0x4da598
test dl, dl
je 0x4da4eb
ucomisd xmm0, xmm7
lahf
test ah, 0x44
jp 0x4da4eb
inc esi
jmp 0x4da47a
comisd xmm5, xmm0
jbe 0x4da4f9
movsd qword [esp + 0x40], xmm0
jmp 0x4da509
maxsd xmm0, xmm6
movsd qword [esp + 0x50], xmm0
movsd xmm0, qword [esp + 0x68]
test cl, cl
je 0x4da47a
addsd xmm0, xmm1
sub esp, 8
movsd qword [esp + 0x70], xmm0
fld qword [esp + 0x70]
fstp qword [esp]
call fcn.0068ef00
movsd xmm0, qword [edi]
add esp, 8
mov dl, byte [ebp + 0x20]
mov ch, byte [esp + 0x11]
fstp qword [esp + 0x68]
ucomisd xmm0, qword [esp + 0x68]
lahf
test ah, 0x44
jnp 0x4da553
xor cl, cl
mov byte [esp + 0x12], cl
jmp 0x4da47e
mov cl, byte [esp + 0x12]
jmp 0x4da47e
test dl, dl
je 0x4da5bb
ucomisd xmm0, xmm7
lahf
test ah, 0x44
jp 0x4da5bb
inc esi
mov ch, byte [esp + 0x11]
movsd xmm5, qword [esp + 0x40]
add edi, 8
movsd xmm6, qword [esp + 0x50]
movsd xmm7, qword [esp + 0x48]
movsd xmm1, qword [0x6be228]
mov dl, byte [ebp + 0x20]
sub ebx, 1
jne 0x4da420
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x10]
mov edi, dword [esp + 0x20]
mov eax, dword [eax]
cmp esi, ebx
jne 0x4da625
mov esi, dword [esp + 0x14]
mov byte [eax + esi], 0
mov eax, dword [ebp + 0x28]
mov byte [eax], 1
jmp 0x4da63e
comisd xmm5, xmm0
jbe 0x4da5c9
movsd qword [esp + 0x40], xmm0
jmp 0x4da5d9
maxsd xmm0, xmm6
movsd qword [esp + 0x50], xmm0
movsd xmm0, qword [esp + 0x68]
test cl, cl
je 0x4da56b
addsd xmm0, xmm1
sub esp, 8
movsd qword [esp + 0x70], xmm0
fld qword [esp + 0x70]
fstp qword [esp]
call fcn.0068ef00
movsd xmm0, qword [edi]
add esp, 8
mov ch, byte [esp + 0x11]
fstp qword [esp + 0x68]
ucomisd xmm0, qword [esp + 0x68]
lahf
test ah, 0x44
jnp 0x4da61c
xor cl, cl
mov byte [esp + 0x12], cl
jmp 0x4da56f
mov cl, byte [esp + 0x12]
jmp 0x4da56f
mov eax, dword [esp + 0x1c]
test esi, esi
mov esi, dword [esp + 0x14]
mov edx, 1
movzx eax, al
cmovg eax, edx
mov dword [esp + 0x1c], eax
movsd xmm5, qword [esp + 0x40]
lea eax, [ebx*8]
movsd xmm7, qword [esp + 0x48]
inc esi
movsd xmm1, qword [0x6be228]
add edi, eax
sub dword [esp + 0x30], 1
mov dl, byte [ebp + 0x20]
mov dword [esp + 0x14], esi
mov dword [esp + 0x20], edi
jne 0x4da400
movsd xmm2, qword [esp + 0x58]
mov al, cl
mov ebx, dword [esp + 0x1c]
movaps xmm0, xmm7
mov esi, dword [esp + 0x3c]
mov cl, bl
add dword [esp + 0x2c], esi
movaps xmm4, xmm6
sub dword [esp + 0x38], 1
movaps xmm1, xmm5
mov edi, dword [esp + 0x18]
mov edx, edi
mov esi, dword [esp + 0x14]
movsd qword [esp + 0x20], xmm2
movsd xmm2, qword [esp + 0x60]
mov dword [esp + 0x1c], ebx
movaps xmm3, xmm2
mov bl, byte [esp + 0x12]
mov byte [esp + 0x12], bl
mov bl, byte [esp + 0x11]
movsd qword [esp + 0x60], xmm2
movsd xmm2, qword [esp + 0x58]
mov byte [esp + 0x11], bl
mov ebx, dword [ebp + 0x10]
movsd qword [esp + 0x58], xmm2
movsd xmm2, qword [esp + 0x20]
movsd qword [esp + 0x30], xmm0
movsd qword [esp + 0x70], xmm3
movsd qword [esp + 0x78], xmm4
movsd qword [esp + 0x68], xmm1
mov byte [esp + 0x13], cl
movsd qword [esp + 0x40], xmm5
movsd qword [esp + 0x50], xmm6
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], esi
movsd qword [esp + 0x48], xmm7
jne 0x4da3d4
mov esi, dword [ebp + 0x2c]
xor ebx, ebx
test edx, edx
movzx eax, al
cmovne ebx, eax
mov byte [esi], cl
mov esi, dword [ebp + 0x10]
test ch, ch
je 0x4da74b
cmp esi, 1
jle 0x4da74b
test cl, cl
je 0x4da74b
cmp byte [ebp + 0x20], 0
jne 0x4da74b
mov eax, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp + 0x1c]
mov byte [esp + 0x2c], bl
movsd xmm5, qword [edi]
movsd qword [esp + 0x50], xmm5
test bl, bl
je 0x4da7f8
comisd xmm1, xmm2
jb 0x4da780
comisd xmm3, xmm1
jb 0x4da780
comisd xmm4, xmm2
jb 0x4da780
comisd xmm3, xmm4
jb 0x4da780
mov al, 1
jmp 0x4da782
xor al, al
and bl, al
mov byte [esp + 0x2c], bl
test cl, cl
je 0x4da7cc
sub esp, 8
movsd qword [esp], xmm0
call fcn.004dd510
add esp, 8
test al, al
je 0x4da7be
movsd xmm0, qword [esp + 0x30]
comisd xmm0, xmmword [esp + 0x20]
jb 0x4da7be
movsd xmm1, qword [esp + 0x70]
comisd xmm1, xmm0
jb 0x4da7be
mov al, 1
jmp 0x4da7c0
xor al, al
movsd xmm5, qword [esp + 0x50]
and bl, al
mov byte [esp + 0x2c], bl
test bl, bl
je 0x4da7f8
fld qword [edi]
sub esp, 8
fstp qword [esp]
call fcn.0068ef00
fstp qword [esp + 0x78]
movsd xmm5, qword [esp + 0x78]
add esp, 8
maxsd xmm5, qword [0x6be228]
movsd qword [esp + 0x50], xmm5
mov eax, dword [ebp + 0x30]
xorps xmm4, xmm4
ucomisd xmm5, xmm4
mov byte [eax], bl
lahf
test ah, 0x44
jnp 0x4da884
cmp byte [ebp + 0x20], 0
je 0x4da88d
test bl, bl
je 0x4da838
fld qword [esp + 0x50]
sub esp, 8
fstp qword [esp]
call fcn.0068ef00
movsd xmm5, qword [esp + 0x58]
add esp, 8
fstp qword [esp + 0x70]
movsd xmm2, qword [esp + 0x70]
jmp 0x4da83f
movaps xmm2, xmm5
addsd xmm2, xmm5
movsd xmm3, qword [esp + 0x68]
movsd xmm1, qword [esp + 0x30]
movaps xmm0, xmm3
subsd xmm0, xmm2
comisd xmm1, xmm0
jb 0x4da899
addsd xmm2, qword [esp + 0x78]
comisd xmm2, xmm1
jb 0x4da899
test bl, bl
je 0x4da87d
movsd xmm0, qword [0x6be228]
xor eax, eax
movsd qword [edi], xmm0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xorps xmm0, xmm0
movsd qword [edi], xmm0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movsd xmm1, qword [esp + 0x30]
movsd xmm3, qword [esp + 0x68]
cmp byte [esp + 0x13], 0
je 0x4daa3b
movsd xmm0, qword [esp + 0x20]
lea eax, [esp + 0x60]
push eax
sub esp, 8
movsd qword [esp + 0x6c], xmm1
movsd qword [esp], xmm0
push dword [esp + 0x38]
sub esp, 0x10
movsd qword [esp + 8], xmm5
movsd qword [esp], xmm3
call fcn.004dcdc0
add esp, 0x20
test al, al
je 0x4daa5c
movsd xmm2, qword [esp + 0x60]
movsd xmm1, qword [esp + 0x30]
ucomisd xmm2, xmm1
lahf
test ah, 0x44
jnp 0x4daa3b
mov eax, dword [ebp + 8]
xor edi, edi
mov edx, dword [eax]
mov eax, esi
imul eax, dword [ebp + 0x14]
mov dword [esp + 0x1c], edx
lea ecx, [edx + 0x10]
mov dword [esp + 0x30], ecx
shl eax, 3
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0xc]
xor ebx, ebx
mov esi, dword [eax]
mov eax, dword [ebp + 0x10]
shl eax, 3
mov dword [esp + 0x3c], eax
mov eax, ecx
mov ecx, dword [ebp + 0x14]
mov dword [esp + 0x38], esi
mov dword [esp + 0x2c], eax
mov dword [esp + 0x20], ecx
nop word [eax + eax]
cmp byte [esi + edi], 0
je 0x4da9fa
xor esi, esi
cmp dword [ebp + 0x10], 4
jl 0x4da9c4
mov edx, dword [ebp + 0x10]
mov ecx, eax
lea edx, [edx - 4]
shr edx, 2
inc edx
lea esi, [edx*4]
movsd xmm0, qword [ecx - 0x10]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x4da979
movsd qword [ecx - 0x10], xmm2
movsd xmm0, qword [ecx - 8]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x4da98d
movsd qword [ecx - 8], xmm2
movsd xmm0, qword [ecx]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x4da99f
movsd qword [ecx], xmm2
movsd xmm0, qword [ecx + 8]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x4da9b3
movsd qword [ecx + 8], xmm2
add ecx, 0x20
sub edx, 1
jne 0x4da965
mov edx, dword [esp + 0x1c]
cmp esi, dword [ebp + 0x10]
jge 0x4da9ee
lea eax, [esi + ebx]
lea ecx, [edx + eax*8]
mov edx, dword [ebp + 0x10]
sub edx, esi
nop
movsd xmm0, qword [ecx]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x4da9e2
movsd qword [ecx], xmm2
add ecx, 8
sub edx, 1
jne 0x4da9d0
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x38]
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
add eax, dword [esp + 0x3c]
inc edi
add ebx, dword [ebp + 0x10]
sub ecx, 1
mov dword [esp + 0x2c], eax
mov dword [esp + 0x20], ecx
jne 0x4da940
mov ecx, dword [esp + 0x30]
add edx, dword [esp + 0x18]
add ecx, dword [esp + 0x18]
sub dword [ebp + 0x18], 1
mov dword [esp + 0x1c], edx
mov dword [esp + 0x30], ecx
jne 0x4da918
mov eax, dword [ebp + 0x24]
mov edi, dword [ebp + 0x1c]
movsd qword [eax], xmm2
movsd xmm1, qword [esp + 0x50]
movsd xmm0, qword [edi]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jnp 0x4daa53
movsd qword [edi], xmm1
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movsd xmm0, qword [esp + 0x30]
comisd xmm0, xmmword [esp + 0x68]
jb 0x4daa3b
test bl, bl
je 0x4daa78
movsd xmm1, qword [0x6be228]
jmp 0x4daa41
xorps xmm1, xmm1
jmp 0x4daa41
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 2
pop ebx
mov esp, ebp
pop ebp
ret