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

Disassembly:
sub esp, 0x10c
mov eax, dword [0x5d8024]
xor eax, esp
mov dword [esp + 0x104], eax
push ebx
push ebp
push esi
push edi
mov ebx, ecx
mov dword [esp + 0x30], ebx
movaps xmm0, xmmword [0x59f580]
movups xmmword [esp + 0x68], xmm0
movaps xmm0, xmmword [0x59f570]
mov ecx, dword [esp + 0x120]
movups xmmword [esp + 0x78], xmm0
movaps xmm0, xmmword [0x59f550]
mov eax, dword [ecx + 4]
mov ebp, dword [ecx + 8]
mov edx, dword [ecx]
movups xmmword [esp + 0x88], xmm0
movaps xmm0, xmmword [0x59f540]
movups xmmword [esp + 0x98], xmm0
mov dword [esp + 0x4c], eax
movaps xmm0, xmmword [0x59f520]
mov dword [esp + 0x54], eax
mov eax, dword [ecx + 0xc]
mov edi, dword [esp + 0x124]
movups xmmword [esp + 0xa8], xmm0
mov dword [esp + 0x38], eax
movaps xmm0, xmmword [0x59f4f0]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x64], eax
mov eax, dword [edi]
mov dword [edi + 4], eax
xor eax, eax
cmp byte [ebx + 0x49], al
movups xmmword [esp + 0xb8], xmm0
setne al
mov dword [esp + 0x34], ebp
movaps xmm0, xmmword [0x59f590]
movups xmmword [esp + 0xd0], xmm0
mov dword [esp + 0x50], ebp
movaps xmm0, xmmword [0x59f560]
lea eax, [eax*2 + 2]
movups xmmword [esp + 0xe0], xmm0
mov dword [esp + 0x58], ebp
xor ebp, ebp
movaps xmm0, xmmword [0x59f530]
movups xmmword [esp + 0xf0], xmm0
movaps xmm0, xmmword [0x59f500]
mov dword [esp + 0xc8], 6
mov dword [esp + 0xcc], 0
movups xmmword [esp + 0x100], xmm0
mov dword [esp + 0x3c], edx
mov dword [esp + 0x48], edx
mov dword [esp + 0x60], edx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], ebp
nop word [eax + eax]
xor esi, esi
mov dword [esp + 0x18], 1
mov ecx, 1
xorps xmm0, xmm0
mov dword [esp + 0x1c], ecx
movlpd qword [esp + 0x20], xmm0
lea ebx, [esi + 0xd]
test ebp, ebp
jne 0x44207d
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], ecx
jmp 0x4420e4
cmp ebp, 1
jne 0x44209a
or eax, 0xffffffff
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
lea esi, [ebp + 0xb]
xor ebx, ebx
or eax, eax
mov dword [esp + 0x18], eax
jmp 0x4420e4
cmp ebp, 2
jne 0x4420b5
or eax, 0xffffffff
mov dword [esp + 0x18], ecx
or edx, eax
lea ebx, [ebp + 6]
xor esi, esi
xor ecx, ecx
mov dword [esp + 0x1c], ecx
jmp 0x4420dc
cmp ebp, 3
jne 0x4420d4
or edx, 0xffffffff
mov dword [esp + 0x14], ecx
or eax, edx
lea esi, [ebp + 4]
xor ebx, ebx
mov dword [esp + 0x18], eax
xor ecx, ecx
mov dword [esp + 0x1c], ecx
jmp 0x4420e0
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
lea eax, [esp + 0x48]
lea eax, [eax + ebp*8]
mov ebp, dword [esp + 0x14]
mov dword [esp + 0x20], eax
xor eax, eax
test ebx, ebx
je 0x442100
cmp esi, ebx
setl al
jmp 0x442105
cmp esi, ebx
setge al
test eax, eax
je 0x44216b
test ecx, ecx
lea edx, [esp + 0x68]
lea eax, [esp + 0xd0]
cmovne eax, edx
mov edx, dword [esp + 0x20]
mov ecx, dword [eax + esi*8]
mov eax, dword [eax + esi*8 + 4]
imul eax, dword [esp + 0x10]
imul ecx, ebp
add eax, dword [edx + 4]
add ecx, dword [edx]
mov edx, dword [edi + 4]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
cmp edx, dword [edi + 8]
je 0x442154
mov dword [edx], ecx
mov ecx, dword [esp + 0x1c]
mov dword [edx + 4], eax
add dword [edi + 4], 8
add esi, dword [esp + 0x18]
jmp 0x4420f3
lea eax, [esp + 0x40]
mov ecx, edi
push eax
push edx
call fcn.00442c50
add esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
jmp 0x4420f3
mov ebp, dword [esp + 0x28]
inc ebp
mov dword [esp + 0x28], ebp
cmp ebp, dword [esp + 0x2c]
jl 0x442050
mov eax, dword [esp + 0x30]
mov al, byte [eax + 0x49]
test al, al
jne 0x4421dd
mov eax, dword [edi + 4]
cmp eax, dword [edi + 8]
je 0x4421a8
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x3c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x38]
mov dword [eax + 4], ecx
add dword [edi + 4], 8
jmp 0x4421bd
lea ecx, [esp + 0x58]
push ecx
push eax
mov ecx, edi
call fcn.00442c50
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x60]
mov eax, dword [edi + 4]
cmp eax, dword [edi + 8]
je 0x4421d0
mov dword [eax], edx
mov dword [eax + 4], ecx
add dword [edi + 4], 8
jmp 0x4421dd
lea ecx, [esp + 0x60]
push ecx
push eax
mov ecx, edi
call fcn.00442c50
mov ecx, dword [esp + 0x114]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00521dac
add esp, 0x10c
ret 8