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

Disassembly:
sub esp, 0x51c
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov esi, dword [0x821c84]
mov dword [esp + 0x30], edi
mov eax, dword [edi + 0x58]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x88888889
shl ecx, 3
mul ecx
shr edx, 5
push edx
lea edx, [esp + 0x1a0]
push str.Rtry_delta:__d
push edx
call fcn.0076ecf4
add esp, 0xc
xor ebp, ebp
mov edx, 1
mov ecx, str.Grey
push 0x19
push ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], 0x192
call fcn.0065ab90
mov edx, dword [esi]
push eax
lea eax, [esp + 0x1c]
mov ecx, esi
push eax
lea eax, [esp + 0x9c]
push eax
call dword [edx + 0x78]
push eax
lea ecx, [esp + 0x1b0]
push esi
lea edx, [esp + 0x30]
push ecx
push edx
call fcn.004977d0
mov eax, dword [edi + 0x60]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x88888889
shl ecx, 3
mul ecx
shr edx, 5
push edx
lea edx, [esp + 0x1c0]
push str.Rtry_timeout:__d
push edx
call fcn.0076ecf4
add esp, 0x2c
mov edx, 1
mov ecx, str.Grey
mov dword [esp + 0x10], ebp
push 0x19
push ebp
mov dword [esp + 0x1c], 0x19c
call fcn.0065ab90
mov edx, dword [esi]
push eax
lea eax, [esp + 0x1c]
mov ecx, esi
push eax
lea eax, [esp + 0x9c]
push eax
call dword [edx + 0x78]
push eax
lea ecx, [esp + 0x1b0]
push esi
lea edx, [esp + 0x30]
push ecx
push edx
call fcn.004977d0
mov eax, dword [0xa27eb0]
push eax
lea ecx, [esp + 0x1c0]
push str.Lat_Fudge_:__d
push ecx
call fcn.0076ecf4
add esp, 0x2c
mov edx, 1
mov ecx, str.Grey
mov dword [esp + 0x10], ebp
push 0x19
push ebp
mov dword [esp + 0x1c], 0x1a6
call fcn.0065ab90
lea edx, [esp + 0x18]
push eax
mov eax, dword [esi]
lea ecx, [esp + 0x98]
push edx
push ecx
mov ecx, esi
call dword [eax + 0x78]
push eax
lea edx, [esp + 0x1b0]
push esi
lea eax, [esp + 0x30]
push edx
push eax
call fcn.004977d0
add esp, 0x20
mov ecx, 0xa5fbfc
call fcn.0068f980
mov ecx, eax
mov eax, dword [0xa5fbf8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
je 0x52512f
mov ecx, 0xa5fbfc
call fcn.0068f980
mov ebx, eax
mov eax, dword [0xa5fbf8]
sub ebx, eax
mov eax, 0x88888889
imul ebx
mov ecx, edx
mov eax, dword [0xa9de20]
add ecx, ebx
sar ecx, 5
mov edx, ecx
shr edx, 0x1f
add ecx, edx
cdq
idiv ecx
push eax
lea eax, [esp + 0x1a0]
push str.FSPS_:__d
push eax
call fcn.0076ecf4
add esp, 0xc
mov edx, 1
mov ecx, str.Grey
mov dword [esp + 0x10], ebp
push 0x19
push ebp
mov dword [esp + 0x1c], 0x1b0
call fcn.0065ab90
mov edx, dword [esi]
push eax
lea ecx, [esp + 0x1c]
lea eax, [esp + 0x98]
push ecx
push eax
mov ecx, esi
call dword [edx + 0x78]
push eax
lea ecx, [esp + 0x1b0]
push esi
lea edx, [esp + 0x30]
push ecx
push edx
call fcn.004977d0
mov eax, dword [0xa2894c]
add esp, 0x20
and eax, 0x7f
cmp al, 0x7f
jne 0x52512f
lea ecx, [esp + 0x1c]
call fcn.0068f980
mov ecx, dword [esp + 0x1c]
mov dword [0xa5fbf8], eax
mov dword [0xa5fbfc], ecx
mov dword [0xa9de20], ebp
cmp dword [0xa255a8], 4
jne 0x5251d4
mov al, byte [0xa27eb4]
test al, al
je 0x5251d4
mov eax, dword [0xa285f8]
cmp eax, ebp
je 0x52515c
mov ecx, dword [eax + 4]
call fcn.004805d0
jmp 0x52515e
xor eax, eax
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea edx, [eax + eax*4]
mov eax, 0x88888889
shl edx, 3
mul edx
shr edx, 5
push edx
lea eax, [esp + 0x1a0]
push str.MC_resp:__d
push eax
call fcn.0076ecf4
add esp, 0xc
mov edx, 1
mov ecx, str.Grey
mov dword [esp + 0x10], ebp
push 0x19
push ebp
mov dword [esp + 0x1c], 0x1ba
call fcn.0065ab90
mov edx, dword [esi]
push eax
lea ecx, [esp + 0x1c]
lea eax, [esp + 0x98]
push ecx
push eax
mov ecx, esi
call dword [edx + 0x78]
push eax
lea ecx, [esp + 0x1b0]
push esi
lea edx, [esp + 0x30]
push ecx
push edx
call fcn.004977d0
add esp, 0x20
mov eax, dword [edi + 0x44]
mov dword [esp + 0x2c], ebp
cmp eax, ebp
jle 0x525775
mov eax, 0xa27e68
mov dword [esp + 0x20], 0xa5e7c0
sub eax, edi
mov ebp, 0x64
lea ebx, [edi + 0x28]
mov dword [esp + 0x10], eax
mov ecx, dword [ebx]
mov edx, dword [0xa1a5ac]
mov eax, dword [ecx + 0x60]
mov eax, dword [edx + eax*4]
test eax, eax
je 0x525750
cmp eax, dword [0xa1e0c4]
je 0x525750
mov edi, dword [eax + 0x15f40]
add ecx, 0x64
push ecx
lea eax, [esp + 0x3a0]
push 0x7c4d24
push eax
call fcn.0076ecf4
mov ecx, dword [0xa9e9e4]
add esp, 0xc
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x80], 0x12e
mov edx, dword [ecx + edi*4]
push 0x19
push 0
lea eax, [esp + 0x84]
push edx
mov edx, dword [esi]
push eax
lea eax, [esp + 0x16c]
push eax
mov ecx, esi
call dword [edx + 0x78]
push eax
lea ecx, [esp + 0x3b0]
push esi
lea edx, [esp + 0xc4]
push ecx
push edx
call fcn.004977d0
mov eax, dword [ebx]
add esp, 0x20
mov ecx, dword [eax + 4]
call fcn.004805d0
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x88888889
shl ecx, 3
imul ecx
add edx, ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
push edx
lea edx, [esp + 0x1a0]
push str.Average__:__d
push edx
call fcn.0076ecf4
mov eax, dword [0xa9e9e4]
add esp, 0xc
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], 0x137
mov ecx, dword [eax + edi*4]
mov eax, dword [esi]
push 0x19
push 0
push ecx
lea edx, [esp + 0x48]
lea ecx, [esp + 0xf8]
push edx
push ecx
mov ecx, esi
call dword [eax + 0x78]
push eax
lea edx, [esp + 0x1b0]
push esi
lea eax, [esp + 0xfc]
push edx
push eax
call fcn.004977d0
mov ecx, dword [ebx]
add esp, 0x20
mov ecx, dword [ecx + 4]
call fcn.004805e0
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x88888889
shl ecx, 3
imul ecx
add edx, ecx
lea ecx, [esp + 0x19c]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
push edx
push str.Max______:__d
push ecx
call fcn.0076ecf4
mov edx, dword [0xa9e9e4]
add esp, 0xc
mov dword [esp + 0x84], ebp
mov dword [esp + 0x88], 0x13f
mov eax, dword [edx + edi*4]
mov edx, dword [esi]
push 0x19
push 0
push eax
lea ecx, [esp + 0x90]
lea eax, [esp + 0x128]
push ecx
push eax
mov ecx, esi
call dword [edx + 0x78]
push eax
lea ecx, [esp + 0x1b0]
push esi
lea edx, [esp + 0xb4]
push ecx
push edx
call fcn.004977d0
mov eax, dword [ebx]
lea edx, [esp + 0x1bc]
mov ecx, dword [eax + 8]
push ecx
push str.Resends__:__d
push edx
call fcn.0076ecf4
mov eax, dword [0xa9e9e4]
add esp, 0x2c
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], 0x147
mov ecx, dword [eax + edi*4]
mov eax, dword [esi]
push 0x19
push 0
push ecx
lea edx, [esp + 0x60]
lea ecx, [esp + 0x198]
push edx
push ecx
mov ecx, esi
call dword [eax + 0x78]
push eax
lea edx, [esp + 0x1b0]
push esi
lea eax, [esp + 0xe4]
push edx
push eax
call fcn.004977d0
mov ecx, dword [ebx]
xor edx, edx
mov eax, dword [ecx + 0xc]
test eax, eax
setl dl
dec edx
and eax, edx
push eax
lea eax, [esp + 0x1c0]
push str.Num_lost_:__d
push eax
call fcn.0076ecf4
mov ecx, dword [0xa9e9e4]
add esp, 0x2c
mov dword [esp + 0x74], ebp
mov dword [esp + 0x78], 0x14f
mov edx, dword [ecx + edi*4]
push 0x19
push 0
push edx
mov edx, dword [esi]
lea eax, [esp + 0x80]
push eax
lea eax, [esp + 0x14c]
push eax
mov ecx, esi
call dword [edx + 0x78]
push eax
lea ecx, [esp + 0x1b0]
push esi
lea edx, [esp + 0xd4]
push ecx
push edx
call fcn.004977d0
mov eax, dword [ebx]
lea edx, [esp + 0x1bc]
mov ecx, dword [eax + 0x10]
push ecx
push str.Pcnt_lost:__d
push edx
call fcn.0076ecf4
mov eax, dword [0xa9e9e4]
add esp, 0x2c
mov dword [esp + 0x64], ebp
mov dword [esp + 0x68], 0x157
mov ecx, dword [eax + edi*4]
mov eax, dword [esi]
push 0x19
push 0
push ecx
lea edx, [esp + 0x70]
lea ecx, [esp + 0x188]
push edx
push ecx
mov ecx, esi
call dword [eax + 0x78]
push eax
lea edx, [esp + 0x1b0]
push esi
lea eax, [esp + 0xf4]
push edx
push eax
call fcn.004977d0
mov eax, dword [0xa27d98]
xor ecx, ecx
add esp, 0x20
cmp eax, ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x28], ecx
jle 0x525530
mov ecx, dword [ebx]
mov edx, dword [ecx + 0x60]
mov ecx, dword [0xa27d8c]
mov dword [esp + 0x38], edx
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0x24]
mov ecx, dword [edx]
mov edx, dword [esp + 0x38]
cmp edx, dword [ecx + 0x5d]
je 0x525521
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
inc ecx
add edx, 4
cmp ecx, eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], edx
jl 0x5254f4
mov ecx, dword [esp + 0x34]
jmp 0x525530
mov eax, dword [0xa27d8c]
mov ecx, dword [esp + 0x28]
mov edx, dword [eax + ecx*4]
mov ecx, dword [edx + 0x61]
push ecx
lea eax, [esp + 0x1a0]
push str.Process_:__d
push eax
call fcn.0076ecf4
mov ecx, dword [0xa9e9e4]
add esp, 0xc
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], 0x15f
mov edx, dword [ecx + edi*4]
push 0x19
push 0
lea eax, [esp + 0x4c]
push edx
mov edx, dword [esi]
push eax
lea eax, [esp + 0x10c]
push eax
mov ecx, esi
call dword [edx + 0x78]
push eax
lea ecx, [esp + 0x1b0]
push esi
lea edx, [esp + 0xbc]
push ecx
push edx
call fcn.004977d0
mov eax, dword [esp + 0x30]
lea edx, [esp + 0x1bc]
mov ecx, dword [eax + ebx]
neg ecx
push ecx
push str.Frame___:__d
push edx
call fcn.0076ecf4
mov eax, dword [0xa9e9e4]
add esp, 0x2c
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], 0x167
mov ecx, dword [eax + edi*4]
mov eax, dword [esi]
push 0x19
push 0
push ecx
lea edx, [esp + 0x58]
lea ecx, [esp + 0x118]
push edx
push ecx
mov ecx, esi
call dword [eax + 0x78]
push eax
lea edx, [esp + 0x1b0]
push esi
lea eax, [esp + 0xcc]
push edx
push eax
call fcn.004977d0
mov ecx, dword [ebx]
mov eax, dword [ecx + 4]
lea ecx, [esp + 0x1bc]
mov edx, dword [eax + 0x38]
mov eax, dword [eax + 0x28]
push edx
push eax
push str.Queue_s_r:__d__d
push ecx
call fcn.0076ecf4
mov edx, dword [0xa9e9e4]
add esp, 0x30
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x60], 0x16f
mov eax, dword [edx + edi*4]
mov edx, dword [esi]
push 0x19
push 0
push eax
lea ecx, [esp + 0x68]
lea eax, [esp + 0x138]
push ecx
push eax
mov ecx, esi
call dword [edx + 0x78]
push eax
lea ecx, [esp + 0x1b0]
push esi
lea edx, [esp + 0xdc]
push ecx
push edx
call fcn.004977d0
mov eax, dword [ebx]
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 0x14]
push ecx
push edx
lea eax, [esp + 0x1c4]
push str.Missed_o_m:__d__d
push eax
call fcn.0076ecf4
mov ecx, dword [0xa9e9e4]
add esp, 0x30
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x70], 0x177
mov edx, dword [ecx + edi*4]
push 0x19
push 0
lea eax, [esp + 0x74]
push edx
mov edx, dword [esi]
push eax
lea eax, [esp + 0x15c]
push eax
mov ecx, esi
call dword [edx + 0x78]
push eax
lea ecx, [esp + 0x1b0]
push esi
lea edx, [esp + 0xec]
push ecx
push edx
call fcn.004977d0
mov eax, dword [0xa255a8]
add esp, 0x20
cmp eax, 4
jne 0x52574c
mov al, byte [0xa27eb4]
test al, al
je 0x52574c
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x88888889
shl ecx, 3
mul ecx
shr edx, 5
push edx
lea edx, [esp + 0x1a0]
push str.Rout_resp:__d
push edx
call fcn.0076ecf4
mov eax, dword [0xa9e9e4]
add esp, 0xc
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], 0x17f
mov ecx, dword [eax + edi*4]
mov eax, dword [esi]
push 0x19
push 0
push ecx
lea edx, [esp + 0x24]
lea ecx, [esp + 0x178]
push edx
push ecx
mov ecx, esi
call dword [eax + 0x78]
push eax
lea edx, [esp + 0x1b0]
push esi
lea eax, [esp + 0xa4]
push edx
push eax
call fcn.004977d0
add esp, 0x20
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x20]
mov ecx, dword [edi + 0x44]
inc eax
add ebp, 0x64
add ebx, 4
add edx, 4
cmp eax, ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x20], edx
jl 0x5251fe
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x51c
ret