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

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x104
push ebp
push esi
mov esi, ecx
cmp dword [eax], 0
je 0x4c1e08
push 0x18
call fcn.00587c03
add esp, 4
test eax, eax
je 0x4c18e0
mov ecx, eax
call fcn.004c03a0
mov ebp, eax
jmp 0x4c18e2
xor ebp, ebp
push ebx
push edi
mov ebx, dword [esp + 0x118]
push 0x100
push 0x8ac1e8
mov ecx, ebx
call fcn.00566cc0
test eax, eax
je 0x4c1918
mov ecx, 0x8ac050
call fcn.005651b0
xor edi, edi
sub eax, edi
je 0x4c1962
dec eax
je 0x4c1918
sub eax, 3
jne 0x4c18e4
mov eax, dword [ebp + 8]
test eax, eax
pop edi
pop ebx
jne 0x4c1926
mov eax, 0x5ea438
push eax
mov ecx, esi
call fcn.004c2860
test eax, eax
jne 0x4c1ddb
test ebp, ebp
je 0x4c1e08
push 0xc
call fcn.00587c03
add esp, 4
test eax, eax
je 0x4c1da0
mov dword [eax], ebp
mov dword [eax + 4], 0
mov byte [eax + 8], 1
jmp 0x4c1da2
push str._CAREERSEASON_
push 0x8ac1e8
call fcn.00587c20
add esp, 8
test eax, eax
je 0x4c1a0c
push 0xb154
call fcn.00587c03
add esp, 4
cmp eax, edi
je 0x4c1996
mov ecx, eax
call fcn.004c0ab0
mov edi, eax
push ebx
mov ecx, edi
call fcn.004c0b70
test al, al
je 0x4c19ef
test edi, edi
je 0x4c18e4
push 0xc
call fcn.00587c03
add esp, 4
test eax, eax
je 0x4c19c7
mov dword [eax], edi
mov dword [eax + 4], 0
mov byte [eax + 8], 1
jmp 0x4c19c9
xor eax, eax
cmp dword [esi], 0
jne 0x4c19de
mov dword [esi], eax
mov dword [esi + 8], eax
mov dword [esi + 4], eax
inc dword [esi + 0xc]
jmp 0x4c18e4
mov ecx, dword [esi + 4]
mov dword [ecx + 4], eax
mov dword [esi + 4], eax
inc dword [esi + 0xc]
jmp 0x4c18e4
test edi, edi
je 0x4c18e4
mov ecx, edi
call fcn.004c0b10
push edi
call fcn.00587bcf
add esp, 4
jmp 0x4c18e4
push str._PLAYERTRACKSTAT_
push 0x8ac1e8
call fcn.00587c20
add esp, 8
test eax, eax
je 0x4c1a2f
push ebx
mov ecx, esi
call fcn.004c18b0
jmp 0x4c18e4
push edi
push edi
push edi
lea edx, [esi + 0x20]
push edx
push str.ABORTEDSEASONS
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea eax, [esi + 0x24]
push eax
push str.TOTALLAPS
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea ecx, [esi + 0x28]
push ecx
push str.TOTALRACES
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea edx, [esi + 0x2c]
push edx
push str.TOTALRACESWITHAI
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea eax, [esi + 0x30]
push eax
push str.TOTALPOINTSSCORED
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea ecx, [esi + 0x34]
push ecx
push str.TOTALCHAMPIONSHIPS
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea edx, [esi + 0x38]
push edx
push str.TOTALWINS
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea eax, [esi + 0x3c]
push eax
push str.TOTALPOLES
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea ecx, [esi + 0x40]
push ecx
push str.TOTALLAPRECORDS
mov ecx, 0x8ac050
call fcn.00565760
push edi
lea edx, [esp + 0x18]
push edx
push str.AVGSTARTPOSITION
mov ecx, 0x8ac050
call fcn.00565520
test eax, eax
je 0x4c1b1e
lea eax, [esp + 0x14]
push eax
call fcn.0058850f
fstp dword [esi + 0x44]
add esp, 4
push edi
lea ecx, [esp + 0x18]
push ecx
push str.AVGFINISHPOSITION
mov ecx, 0x8ac050
call fcn.00565520
test eax, eax
je 0x4c1b47
lea edx, [esp + 0x14]
push edx
call fcn.0058850f
fstp dword [esi + 0x48]
add esp, 4
push edi
lea eax, [esp + 0x18]
push eax
push str.AVGRACEDISTANCE
mov ecx, 0x8ac050
call fcn.00565520
test eax, eax
je 0x4c1b70
lea ecx, [esp + 0x14]
push ecx
call fcn.0058850f
fstp dword [esi + 0x4c]
add esp, 4
push edi
lea edx, [esp + 0x18]
push edx
push str.AVGOPPONENTSTRENGTH
mov ecx, 0x8ac050
call fcn.00565520
test eax, eax
je 0x4c1b99
lea eax, [esp + 0x14]
push eax
call fcn.0058850f
fstp dword [esi + 0x50]
add esp, 4
push edi
push edi
push edi
lea ecx, [esp + 0x1c]
push ecx
push str.MECHFAIL_rate
mov ecx, 0x8ac050
mov dword [esp + 0x24], edi
call fcn.00565760
test eax, eax
je 0x4c1bbf
mov edx, dword [esp + 0x10]
mov dword [esi + 0x54], edx
push edi
push edi
push edi
lea eax, [esi + 0x58]
push eax
push str.RACECOND_reconnaissance
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea ecx, [esi + 0x5c]
push ecx
push str.RACECOND_walkthrough
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea edx, [esi + 0x60]
push edx
push str.RACECOND_formation
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea eax, [esi + 0x64]
push eax
push str.RACECOND_flag_rules
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea ecx, [esp + 0x1c]
push ecx
push str.RACECOND_weather
mov ecx, 0x8ac050
call fcn.00565760
test eax, eax
je 0x4c1c39
mov edx, dword [esp + 0x10]
mov dword [esi + 0x68], edx
push edi
push edi
push edi
lea eax, [esp + 0x1c]
push eax
push str.RACECOND_timescaled_weather
mov ecx, 0x8ac050
call fcn.00565760
test eax, eax
je 0x4c1c5e
cmp dword [esp + 0x10], edi
setne cl
mov byte [esi + 0x6c], cl
push edi
push edi
push edi
lea edx, [esi + 0x70]
push edx
push str.GAMEOPT_qualify_laps
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea eax, [esi + 0x74]
push eax
push str.GAMEOPT_race_laps
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea ecx, [esi + 0x78]
push ecx
push str.GAMEOPT_race_time
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
push edi
push edi
push edi
push edi
lea edx, [esi + 0x7c]
push edx
push str.GAMEOPT_race_length
mov ecx, 0x8ac050
call fcn.00565870
push edi
push edi
push edi
lea eax, [esi + 0x80]
push eax
push str.GAMEOPT_opponents
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea ecx, [esi + 0x84]
push ecx
push str.GAMEOPT_fuel_mult
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea edx, [esi + 0x88]
push edx
push str.GAMEOPT_tire_mult
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea eax, [esi + 0x8c]
push eax
push str.GAMEOPT_speed_comp
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
lea ecx, [ebp + 0x10]
push ecx
push str.TotalNumLaps
mov ecx, 0x8ac050
call fcn.00565760
push edi
push edi
push edi
push edi
push edi
push edi
push edi
lea edx, [ebp + 0x14]
push edx
push str.BestLapTime
mov ecx, 0x8ac050
call fcn.00565870
lea eax, [esp + 0x14]
push eax
push str.Trackname
mov ecx, 0x8ac050
call fcn.005654a0
test eax, eax
je 0x4c1d72
lea ecx, [esp + 0x14]
push ecx
mov ecx, ebp
call fcn.00566650
lea edx, [esp + 0x14]
push edx
push str.TrackFile
mov ecx, 0x8ac050
call fcn.005654a0
test eax, eax
je 0x4c18e4
lea eax, [esp + 0x14]
push eax
lea ecx, [ebp + 8]
call fcn.00566650
jmp 0x4c18e4
xor eax, eax
mov ecx, dword [esi + 0x10]
test ecx, ecx
jne 0x4c1dc2
mov dword [esi + 0x10], eax
mov dword [esi + 0x18], eax
mov dword [esi + 0x14], eax
inc dword [esi + 0x1c]
pop esi
xor al, al
pop ebp
add esp, 0x104
ret 4
mov ecx, dword [esi + 0x14]
mov dword [ecx + 4], eax
mov dword [esi + 0x14], eax
inc dword [esi + 0x1c]
pop esi
xor al, al
pop ebp
add esp, 0x104
ret 4
test ebp, ebp
je 0x4c1e08
mov eax, dword [ebp + 8]
test eax, eax
je 0x4c1def
push eax
call fcn.00587bcf
add esp, 4
mov eax, dword [ebp]
test eax, eax
je 0x4c1dff
push eax
call fcn.00587bcf
add esp, 4
push ebp
call fcn.00587bcf
add esp, 4
pop esi
xor al, al
pop ebp
add esp, 0x104
ret 4