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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xc0
mov edi, dword [edx + 4]
xor eax, eax
cmp dword [edi + 0x9c], 0x80000000
je 0x4e91c6
mov eax, dword [edi + 0xa0]
je 0x4e9518
mov ebx, dword [edi + 0xa4]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edx
mov dword [esp + 0x20], eax
test ebx, ebx
je 0x4e9221
js 0x4e952c
movzx eax, byte [0x597110]
mov eax, dword [0x5970d8]
test eax, eax
jne 0x4e9206
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x4e9215
mov dword [0x5970d8], eax
push ebx
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
mov esi, eax
test eax, eax
jne 0x4e9226
mov ecx, 1
mov edx, ebx
call fcn.00429f40
mov esi, 1
push ebx
push dword [esp + 0x24]
push esi
call sub.msvcrt.dll_memcpy
add esp, 0xc
cmp dword [ebp + 0xc], 2
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], ebx
jb 0x4e92ab
mov eax, dword [esp + 8]
lea ecx, [esp + 0x1c]
mov dword [esp + 0x38], 0x584cac
mov dword [esp + 0x3c], 3
lea edx, [esp + 0x10]
mov dword [esp + 0x48], 0
mov dword [esp + 0x7c], ecx
lea ecx, [esp + 0x7c]
mov dword [esp + 0x80], 0x469ab0
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], 0x4325b0
mov dword [esp + 0x40], ecx
lea ecx, [esp + 0x38]
mov dword [esp + 0x44], 2
mov eax, dword [eax + 8]
mov dword [esp + 0x1c], eax
call fcn.004afa30
mov esi, dword [ebp + 8]
cmp dword [edi + 8], 0
je 0x4e92dc
movups xmm0, xmmword [edi + 0xc]
xor eax, eax
movups xmmword [esp + 0x3c], xmm0
movups xmm0, xmmword [edi + 0x1c]
movups xmmword [esp + 0x4c], xmm0
movups xmm0, xmmword [edi + 0x2c]
movups xmmword [esp + 0x5c], xmm0
movups xmm0, xmmword [edi + 0x3c]
movups xmmword [esp + 0x6c], xmm0
jmp 0x4e9353
cmp dword [edi + 0x78], 0
je 0x4e930b
movss xmm0, dword [edi + 0x84]
movsd xmm1, qword [edi + 0x7c]
cmp dword [edi + 0x54], 0
je 0x4e9317
movups xmm2, xmmword [edi + 0x58]
cmp dword [edi + 0x68], 0
je 0x4e9324
movss xmm3, dword [edi + 0x74]
movsd xmm4, qword [edi + 0x6c]
jmp 0x4e9333
xorps xmm1, xmm1
xorps xmm0, xmm0
cmp dword [edi + 0x54], 0
jne 0x4e92f5
movaps xmm2, xmmword [0x573b00]
cmp dword [edi + 0x68], 0
jne 0x4e92ff
movaps xmm4, xmmword [0x573b10]
movss xmm3, dword [0x573b20]
mov eax, 1
movlps qword [esp + 0x3c], xmm1
movss dword [esp + 0x44], xmm0
movups xmmword [esp + 0x54], xmm2
movlps qword [esp + 0x48], xmm4
movss dword [esp + 0x50], xmm3
lea ecx, [esp + 0x7c]
lea edx, [esp + 0x38]
mov dword [esp + 0x38], eax
call fcn.00477a80
movups xmm6, xmmword [esp + 0xac]
movups xmm1, xmmword [esp + 0x9c]
movups xmm0, xmmword [esp + 0x8c]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x18]
movaps xmm4, xmm1
movaps xmm3, xmm6
movaps xmm5, xmm6
movaps xmmword [esp + 0x20], xmm6
movaps xmm2, xmm0
mov dword [ecx + 8], eax
shufps xmm4, xmm1, 0x16
shufps xmm3, xmm6, 0xef
shufps xmm5, xmm6, 0x16
shufps xmm6, xmm6, 0x60
shufps xmm2, xmm0, 0x5a
mulps xmm3, xmm4
movaps xmm4, xmm1
shufps xmm4, xmm1, 0xef
mulps xmm5, xmm4
movaps xmm4, xmm1
shufps xmm4, xmm1, 6
subps xmm3, xmm5
mulps xmm1, xmm1
mulps xmm6, xmm4
movaps xmm4, xmm3
movaps xmm7, xmm3
movaps xmm5, xmm6
shufps xmm4, xmm3, 0x90
unpckhpd xmm5, xmm6
subps xmm5, xmm6
movaps xmm6, xmm0
shufps xmm6, xmm0, 1
mulps xmm6, xmm4
movaps xmm4, xmm5
shufps xmm4, xmm3, 0x30
shufps xmm3, xmm5, 2
shufps xmm7, xmm4, 0x2d
shufps xmm3, xmm5, 0x58
movups xmm4, xmmword [esp + 0x7c]
mulps xmm2, xmm7
subps xmm6, xmm2
movaps xmm2, xmm0
shufps xmm2, xmm0, 0xbf
mulps xmm0, xmm0
mulps xmm2, xmm3
addps xmm2, xmm6
mulps xmm2, xmmword [0x573b30]
mulps xmm2, xmm4
mulps xmm4, xmm4
movaps xmm3, xmm2
unpckhpd xmm3, xmm2
addps xmm3, xmm2
movaps xmm2, xmm4
movaps xmm5, xmm3
unpckhpd xmm2, xmm4
shufps xmm5, xmm3, 0x55
addps xmm2, xmm4
movss xmm4, dword [0x573b60]
addss xmm5, xmm3
movaps xmm3, xmmword [0x573b40]
movaps xmm6, xmm2
shufps xmm6, xmm2, 0x55
addss xmm6, xmm2
movaps xmm2, xmm5
cmpunordss xmm5, xmm5
andps xmm4, xmm5
andps xmm2, xmm3
orps xmm2, xmmword [0x573b50]
andnps xmm5, xmm2
xorps xmm2, xmm2
sqrtss xmm2, xmm6
orps xmm4, xmm5
mulss xmm4, xmm2
movaps xmm2, xmm0
unpckhpd xmm2, xmm0
addps xmm2, xmm0
movaps xmm0, xmm2
shufps xmm0, xmm2, 0x55
addss xmm0, xmm2
xorps xmm2, xmm2
sqrtss xmm2, xmm0
movaps xmm0, xmm1
unpckhpd xmm0, xmm1
addps xmm0, xmm1
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
addss xmm1, xmm0
xorps xmm0, xmm0
sqrtss xmm0, xmm1
movaps xmm1, xmm2
cmpunordss xmm1, xmm2
movaps xmm5, xmm1
andps xmm5, xmm0
maxss xmm0, xmm2
andnps xmm1, xmm0
orps xmm1, xmm5
movaps xmm0, xmm1
maxss xmm0, xmm4
cmpunordss xmm4, xmm4
movaps xmm2, xmm4
andps xmm4, xmm1
movaps xmm1, xmmword [esp + 0x20]
andnps xmm2, xmm0
orps xmm4, xmm2
movsd xmm2, qword [esp + 0x10]
xorps xmm3, xmm1
shufps xmm1, xmm1, 0xe9
movsd qword [ecx], xmm2
mov dword [ecx + 0xc], esi
movss dword [ecx + 0x10], xmm3
movlps qword [ecx + 0x14], xmm1
movss dword [ecx + 0x1c], xmm4
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, 0x584c68
mov edx, 0x17
push 0x584c80
call fcn.0046f1c0
call fcn.00429f00
nop word cs:[eax + eax]
nop dword [eax + eax]