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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov esi, ecx
push ebx
mov dword [ebp - 0x10], esi
call fcn.005951a0
mov dword [esi], vtable.hkbModifier.0
lea edi, [esi + 0x30]
movzx eax, byte [ebx + 0x28]
mov byte [esi + 0x28], al
mov dword [esi], vtable.BSLookAtModifier.0
movzx eax, byte [ebx + 0x2c]
mov byte [esi + 0x2c], al
lea eax, [esi + 0x3c]
mov dword [edi], 0
mov dword [edi + 4], 0
mov dword [edi + 8], connect
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], connect
mov dword [ebp + 8], eax
mov eax, dword [ebx + 0x48]
mov dword [esi + 0x48], eax
mov eax, dword [ebx + 0x4c]
mov dword [esi + 0x4c], eax
movzx eax, byte [ebx + 0x50]
mov byte [esi + 0x50], al
mov eax, dword [ebx + 0x54]
mov dword [esi + 0x54], eax
mov eax, dword [ebx + 0x58]
mov dword [esi + 0x58], eax
movzx eax, byte [ebx + 0x5c]
mov byte [esi + 0x5c], al
movaps xmm0, xmmword [ebx + 0x60]
movaps xmmword [esi + 0x60], xmm0
movzx eax, byte [ebx + 0x70]
mov byte [esi + 0x70], al
mov eax, dword [ebx + 0x74]
mov dword [esi + 0x74], eax
mov dword [esi + 0x78], 0
mov eax, dword [ebx + 0x78]
mov dword [ebp - 4], edi
mov dword [ebp - 0xc], eax
test eax, eax
je 0x5ec6a8
mov ecx, eax
call fcn.0045c0c0
mov ecx, dword [esi + 0x78]
test ecx, ecx
je 0x5ec6b4
call fcn.0045c160
mov eax, dword [ebp - 0xc]
lea edx, [esi + 0x30]
mov dword [esi + 0x78], eax
mov al, byte [ebx + 0x7c]
mov byte [esi + 0x7c], al
mov eax, dword [ebx + 0x80]
mov dword [esi + 0x80], eax
mov eax, dword [ebx + 0x84]
mov dword [esi + 0x84], eax
mov eax, dword [ebx + 0x88]
mov dword [esi + 0x88], eax
mov eax, dword [ebx + 0x8c]
mov dword [esi + 0x8c], eax
mov dword [esi + 0x94], 0
mov dword [esi + 0x1c], 0
mov eax, dword [edi + 4]
mov ecx, dword [ebx + 0x34]
cmp ecx, eax
mov edi, ecx
mov dword [ebp - 8], ecx
cmovg edi, eax
mov eax, dword [edx + 8]
and eax, 0x3fffffff
mov dword [ebp - 0xc], edi
cmp eax, ecx
jge 0x5ec742
lea ecx, [eax + eax]
mov eax, dword [ebp - 8]
cmp eax, ecx
push 0x40
cmovl eax, ecx
push eax
push edx
push 0x7d8954
call fcn.00467b80
mov edx, dword [ebp - 4]
add esp, 0x10
mov esi, dword [ebx + 0x30]
mov eax, dword [edx]
test edi, edi
jle 0x5ec795
lea edx, [esi + 0x24]
sub esi, eax
lea ecx, [eax + 0x10]
mov ax, word [edx - 0x24]
lea edx, [edx + 0x40]
mov word [ecx - 0x10], ax
lea ecx, [ecx + 0x40]
movaps xmm0, xmmword [esi + ecx - 0x40]
movaps xmmword [ecx - 0x40], xmm0
mov eax, dword [edx - 0x44]
mov dword [ecx - 0x30], eax
mov eax, dword [edx - 0x40]
mov dword [ecx - 0x2c], eax
mov eax, dword [edx - 0x3c]
mov dword [ecx - 0x28], eax
mov al, byte [edx - 0x38]
mov byte [ecx - 0x24], al
movaps xmm0, xmmword [edx - 0x34]
movaps xmmword [ecx - 0x20], xmm0
sub edi, 1
jne 0x5ec753
mov edi, dword [ebp - 0xc]
mov edx, dword [ebp - 4]
mov ecx, dword [edx]
mov eax, edi
mov edi, dword [ebx + 0x30]
shl eax, 6
add ecx, eax
add edi, eax
mov eax, dword [ebp - 8]
mov esi, eax
sub esi, dword [ebp - 0xc]
mov dword [ebp - 0x14], ecx
test esi, esi
jle 0x5ec806
lea edx, [edi + 0x24]
add ecx, 0x10
sub edi, dword [ebp - 0x14]
nop dword [eax + eax]
lea eax, [ecx - 0x10]
test eax, eax
je 0x5ec7f5
mov ax, word [edx - 0x24]
mov word [ecx - 0x10], ax
movaps xmm0, xmmword [edi + ecx]
movaps xmmword [ecx], xmm0
mov eax, dword [edx - 4]
mov dword [ecx + 0x10], eax
mov eax, dword [edx]
mov dword [ecx + 0x14], eax
mov eax, dword [edx + 4]
mov dword [ecx + 0x18], eax
mov al, byte [edx + 8]
mov byte [ecx + 0x1c], al
movaps xmm0, xmmword [edx + 0xc]
movaps xmmword [ecx + 0x20], xmm0
add edx, 0x40
add ecx, 0x40
sub esi, 1
jne 0x5ec7c0
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
mov dword [edx + 4], eax
mov edx, dword [ebp + 8]
mov esi, dword [ebx + 0x40]
mov ecx, esi
mov dword [ebp - 4], esi
cmp esi, dword [edx + 4]
mov eax, dword [edx + 8]
cmovg ecx, dword [edx + 4]
and eax, 0x3fffffff
mov dword [ebp - 8], ecx
cmp eax, esi
jge 0x5ec84b
lea ecx, [eax + eax]
mov eax, esi
cmp esi, ecx
push 0x40
cmovl eax, ecx
push eax
push edx
push 0x7d8954
call fcn.00467b80
mov ecx, dword [ebp - 8]
add esp, 0x10
mov edx, dword [ebp + 8]
mov edi, dword [ebx + 0x3c]
mov eax, dword [edx]
test ecx, ecx
jle 0x5ec8a5
mov esi, dword [ebp - 8]
lea edx, [edi + 0x24]
lea ecx, [eax + 0x10]
sub edi, eax
nop
mov ax, word [edx - 0x24]
lea edx, [edx + 0x40]
mov word [ecx - 0x10], ax
lea ecx, [ecx + 0x40]
movaps xmm0, xmmword [ecx + edi - 0x40]
movaps xmmword [ecx - 0x40], xmm0
mov eax, dword [edx - 0x44]
mov dword [ecx - 0x30], eax
mov eax, dword [edx - 0x40]
mov dword [ecx - 0x2c], eax
mov eax, dword [edx - 0x3c]
mov dword [ecx - 0x28], eax
mov al, byte [edx - 0x38]
mov byte [ecx - 0x24], al
movaps xmm0, xmmword [edx - 0x34]
movaps xmmword [ecx - 0x20], xmm0
sub esi, 1
jne 0x5ec860
mov esi, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 8]
mov edi, dword [ebx + 0x3c]
mov eax, ecx
mov ebx, dword [edx]
sub esi, ecx
shl eax, 6
add edi, eax
add ebx, eax
test esi, esi
jle 0x5ec916
lea edx, [edi + 0x24]
sub edi, ebx
lea ecx, [ebx + 0x10]
lea eax, [ecx - 0x10]
test eax, eax
je 0x5ec8f6
mov ax, word [edx - 0x24]
mov word [ecx - 0x10], ax
movaps xmm0, xmmword [edi + ecx]
movaps xmmword [ecx], xmm0
mov eax, dword [edx - 4]
mov dword [ecx + 0x10], eax
mov eax, dword [edx]
mov dword [ecx + 0x14], eax
mov eax, dword [edx + 4]
mov dword [ecx + 0x18], eax
mov al, byte [edx + 8]
mov byte [ecx + 0x1c], al
movaps xmm0, xmmword [edx + 0xc]
movaps xmmword [ecx + 0x20], xmm0
add edx, 0x40
add ecx, 0x40
sub esi, 1
jne 0x5ec8c1
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 4]
pop edi
pop esi
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x10]
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [ebp - 4]
pop edi
pop esi
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x10]
pop ebx
mov esp, ebp
pop ebp
ret 4