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

Disassembly:
sub esp, 0x11c
push ebx
push ebp
mov ebp, dword [esp + 0x12c]
test ebp, ebp
push esi
push edi
je 0x53cab5
test byte [0xb314b0], 1
jne 0x53c833
or dword [0xb314b0], 1
mov dword [0xb314ac], 0xfff00000
mov eax, dword [0x726ce8]
mov ecx, dword [0x726cec]
mov edx, dword [0x726cf0]
push 0xff
mov dword [esp + 0x20], eax
lea eax, [esp + 0x2d]
push 0
push eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], edx
mov byte [esp + 0x34], 0
call fcn.004ae0b0
mov ebx, dword [esp + 0x13c]
mov ecx, dword [ebx + 0x780]
push ecx
push str.NumPlayers___d
lea edx, [esp + 0x3c]
push 0x100
push edx
call fcn.004a96d3
fld dword [0x6d54e8]
add esp, 0x1c
push 5
push ecx
movzx ecx, word [0x9cdcd6]
fstp dword [esp]
mov dword [esp + 0x1c], ecx
mov eax, dword [0xb314ac]
movzx edx, word [0x9cdcd4]
fild dword [esp + 0x1c]
push eax
fdiv qword [0x6f9b00]
sub esp, 8
mov esi, dword [0xa038e8]
lea eax, [esp + 0x3c]
fmul dword [esp + 0x34]
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
mov dword [esp + 0x28], edx
fstp dword [esp + 4]
fild dword [esp + 0x28]
fdiv qword [0x6f9a58]
fmul dword [esp + 0x30]
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
fstp dword [esp]
push ebp
push eax
call fcn.00586670
fld dword [esp + 0x3c]
fadd qword [0x6fa240]
add esp, 0x1c
xor edi, edi
fstp dword [esp + 0x20]
fld dword [edi + 0x726cf4]
movzx edx, word [0x9cdcd6]
fadd dword [esp + 0x1c]
push 5
push ecx
mov dword [esp + 0x1c], edx
fstp dword [esp + 0x24]
mov ecx, dword [0xb314ac]
fld dword [0x6d54e8]
movzx eax, word [0x9cdcd4]
fstp dword [esp]
fild dword [esp + 0x1c]
push ecx
sub esp, 8
fdiv qword [0x6f9b00]
mov ecx, dword [edi + 0x726d10]
mov esi, dword [0xa038e8]
fmul dword [esp + 0x34]
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
mov dword [esp + 0x28], eax
fstp dword [esp + 4]
fild dword [esp + 0x28]
fdiv qword [0x6f9a58]
fmul dword [esp + 0x30]
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
fstp dword [esp]
push ebp
push ecx
call fcn.00586670
add edi, 4
add esp, 0x1c
cmp edi, 0x1c
jb 0x53c90d
fld dword [esp + 0x20]
mov eax, dword [ebx + 0x780]
fadd qword [0x6fa240]
movss xmm0, dword [0x726ce8]
xor ecx, ecx
test eax, eax
fstp dword [esp + 0x20]
movss dword [esp + 0x1c], xmm0
mov dword [esp + 0x14], ecx
jbe 0x53cab5
cmp ecx, eax
jae 0x53ca7a
test ebx, ebx
je 0x53ca7a
xor edi, edi
fld dword [edi*4 + 0x726cf4]
push edi
fadd dword [esp + 0x20]
lea esi, [esp + 0x2c]
mov eax, ebx
fstp dword [esp + 0x20]
call fcn.0053c6f0
movzx eax, word [0x9cdcd6]
fld dword [0x6d54e8]
push 5
push ecx
mov dword [esp + 0x20], eax
mov edx, dword [0xb314ac]
fstp dword [esp]
movzx ecx, word [0x9cdcd4]
fild dword [esp + 0x20]
push edx
fdiv qword [0x6f9b00]
sub esp, 8
mov edx, esi
mov esi, dword [0xa038e8]
fmul dword [esp + 0x34]
fstp dword [esp + 0x2c]
fld dword [esp + 0x2c]
mov dword [esp + 0x2c], ecx
fstp dword [esp + 4]
fild dword [esp + 0x2c]
fdiv qword [0x6f9a58]
fmul dword [esp + 0x30]
fstp dword [esp + 0x2c]
fld dword [esp + 0x2c]
fstp dword [esp]
push ebp
push edx
call fcn.00586670
add edi, 1
add esp, 0x1c
cmp edi, 8
jb 0x53c9de
mov ecx, dword [esp + 0x14]
fld dword [esp + 0x20]
mov eax, dword [esp + 0x130]
fadd qword [0x6fa240]
mov eax, dword [eax + 0x780]
movss xmm0, dword [0x726ce8]
add ecx, 1
add ebx, 0x78
fstp dword [esp + 0x20]
cmp ecx, eax
movss dword [esp + 0x1c], xmm0
mov dword [esp + 0x14], ecx
jb 0x53c9d4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x11c
ret 8