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

Disassembly:
sub esp, 0xd4
push ebx
push ebp
push esi
push edi
lea ecx, [esp + 0x6c]
call fcn.005a8020
push 0xbbcdc8
push 0x226
mov ecx, 0xbc12c0
call fcn.005322f0
push 0x86713c
mov ecx, 0xbc12c0
call fcn.00532350
mov esi, dword [esp + 0xf0]
and al, 0xf0
add byte [eax], al
add byte [ebx + 0xf75003e], al
mov eax, dword [str.torso]
push 0
push eax
mov ecx, esi
call fcn.005a7920
mov eax, dword [esi + 4]
test eax, eax
jne 0x5a6a38
mov ecx, dword [str.head]
push 1
push ecx
mov ecx, esi
call fcn.005a7920
mov eax, dword [esi + 8]
test eax, eax
jne 0x5a6a4f
mov edx, dword [str.hands]
push 2
push edx
mov ecx, esi
call fcn.005a7920
mov eax, dword [esi + 0xc]
test eax, eax
jne 0x5a6a65
mov eax, dword [str.legs]
push 3
push eax
mov ecx, esi
call fcn.005a7920
mov eax, dword [esi + 0x10]
test eax, eax
jne 0x5a6a7c
mov ecx, dword [str.feet]
push 4
push ecx
mov ecx, esi
call fcn.005a7920
mov edx, dword [esp + 0xf4]
test edx, edx
mov dword [0xbc1288], edx
jne 0x5a6b84
mov byte [0x8d0aa4], 1
mov byte [0x8d0aa5], 1
mov byte [0x8d0aa6], 1
mov eax, dword [esp + 0xf8]
mov ecx, 0x1e
lea edi, [esp + 0x6c]
rep movsd dword es:[edi], dword [esi]
push eax
lea ecx, [esp + 0x70]
push ecx
call fcn.005a44c0
add esp, 8
lea edi, [esp + 0x10]
lea esi, [esp + 0x14]
lea ebx, [esp + 0x18]
lea eax, [esp + 0x6c]
call fcn.005a42b0
mov al, byte [0x8d0aa6]
test al, al
mov ebp, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
jne 0x5a6af5
mov al, byte [0x8d0aa4]
test al, al
je 0x5a6b2c
mov al, byte [esp + 0xf8]
test al, al
jne 0x5a6b2c
mov esi, dword [esp + 0xec]
push 0
push 0x5a44a0
push esi
call fcn.007f3730
mov edx, dword [esp + 0x24]
push ebp
push ebx
push edx
lea eax, [esp + 0xac]
push eax
push esi
call fcn.005a6040
add esp, 0x20
xor esi, esi
mov edi, edi
mov ecx, dword [esi + 0x8d0a7c]
mov edx, dword [esp + 0xec]
push ecx
push edx
call fcn.007f39f0
mov edi, eax
add esp, 8
test edi, edi
je 0x5a6c38
mov byte [esp + 0x10], 0xff
mov byte [esp + 0x11], 0xff
mov byte [esp + 0x12], 0xff
mov byte [esp + 0x13], 0xff
call fcn.0074d990
mov ecx, dword [esp + 0x10]
push edi
push eax
mov dword [esp + esi + 0x24], eax
mov dword [eax + 4], ecx
call fcn.0074dbc0
add esp, 8
jmp 0x5a6c40
xor bl, bl
mov byte [0x8d0aa5], bl
mov byte [0x8d0aa6], bl
fld dword [esi + 0x70]
fld dword [edx + 0x70]
fcompp
fnstsw ax
test ah, 0x44
jp 0x5a6bb8
fld dword [esi + 0x74]
fld dword [edx + 0x74]
fcompp
fnstsw ax
test ah, 0x44
jp 0x5a6bb8
mov byte [0x8d0aa4], bl
jmp 0x5a6bc7
mov bl, 1
mov byte [0x8d0aa4], 1
mov byte [0x8d0aa5], bl
mov edi, esi
xor ecx, ecx
mov eax, edx
sub edi, edx
nop
mov ebp, dword [edi + eax]
cmp ebp, dword [eax]
jne 0x5a6be2
inc ecx
add eax, 4
cmp ecx, 0xa
jl 0x5a6bd0
jmp 0x5a6bea
mov bl, 1
mov byte [0x8d0aa5], bl
xor ecx, ecx
lea eax, [edx + 0x28]
nop
mov edx, dword [eax + edi]
cmp edx, dword [eax]
jne 0x5a6c02
inc ecx
add eax, 4
cmp ecx, 0x12
jl 0x5a6bf0
jmp 0x5a6c09
mov byte [0x8d0aa6], 1
mov al, byte [0x8d0aa4]
test al, al
jne 0x5a6aa6
test bl, bl
jne 0x5a6aa6
mov al, byte [0x8d0aa6]
test al, al
jne 0x5a6aa6
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xd4
ret
mov dword [esp + esi + 0x1c], 0
add esi, 4
cmp esi, 0x28
jl 0x5a6b30
mov edx, dword [esp + 0x18]
push ebp
push ebx
push edx
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x54]
push ecx
call fcn.005a55a0
mov edx, dword [esp + 0xfc]
push edx
call fcn.00734820
mov esi, eax
mov eax, dword [esi + 0x18]
push eax
call fcn.007c7550
push esi
mov ebp, eax
call fcn.007c7540
mov edi, eax
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x68]
push ecx
push 0xa
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x48]
push eax
lea ecx, [esp + 0x48]
push ecx
push edi
call fcn.005a6530
mov esi, dword [esp + 0x50]
mov ebx, dword [esi + 0x14]
push ebp
call fcn.007c77e0
add esp, 0x40
push ebp
mov dword [esp + 0x18], eax
call fcn.007c7810
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x1c]
push ebp
push edx
push eax
push ebx
call fcn.007c75b0
push eax
push esi
call fcn.007c7560
mov ecx, dword [esp + 0x38]
push ecx
call fcn.008214bd
push ebp
call fcn.008214bd
mov edx, dword [edi + 0x20]
mov eax, dword [edx + 0x20]
mov ecx, dword [edi]
push eax
push ecx
push edi
call fcn.007c4ed0
mov ebx, eax
call fcn.007f0410
mov ebp, eax
push ebx
push ebp
call fcn.007c5130
call fcn.00749c50
push 0
mov edi, eax
push esi
push edi
call fcn.00749d40
add esp, 0x48
push ebx
push edi
call fcn.007c7520
push ebp
push edi
call fcn.0074bf20
push 1
push edi
call fcn.007c7830
call fcn.007f0410
mov ebx, eax
push ebp
push ebx
call fcn.007f0b00
call fcn.0074a290
mov ebp, eax
push edi
push ebp
mov dword [ebp + 4], ebx
call fcn.0074a490
push esi
call fcn.0074ccc0
or dword [esi + 8], 2
mov edx, dword [esp + 0x118]
push edx
call fcn.007f3a70
add esp, 0x30
xor esi, esi
mov eax, dword [esp + esi + 0x44]
test eax, eax
je 0x5a6d81
push eax
call fcn.0074ccc0
add esp, 4
mov eax, dword [esp + esi + 0x1c]
test eax, eax
je 0x5a6d92
push eax
call fcn.0074da20
add esp, 4
add esi, 4
cmp esi, 0x28
jl 0x5a6d70
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0xd4
ret