Function at 0x4c0089
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov eax, 0x637e29
call fcn.00600064
sub esp, 0x35c
mov eax, dword [0x6b55d0]
push ebx
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x90], esi
call fcn.00401ca8
xor edi, edi
mov ebx, eax
xor eax, eax
mov dword [ebp - 0x4c], edi
inc eax
push eax
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x48]
push str.__profile__d_name__
push eax
call fcn.00493ef3
add esp, 0xc
push 1
mov ecx, ebx
mov dword [ebp - 4], edi
call fcn.0040368a
mov ecx, dword [ebp - 0x4c]
cmp byte [eax + ecx + 4], 0
je 0x4c0126
push edi
lea eax, [ebp - 0x2c]
push 0x2718
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov byte [ebp - 4], 1
call fcn.00493639
push eax
lea ecx, [ebp - 0x48]
call fcn.00493639
push eax
mov ecx, esi
call fcn.004bfd5a
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0
call fcn.00402a58
jmp 0x4c0147
push 1
mov ecx, ebx
call fcn.0040368a
mov ecx, dword [ebp - 0x4c]
lea eax, [eax + ecx + 5]
push eax
lea ecx, [ebp - 0x48]
call fcn.00493639
push eax
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x48]
call fcn.00402a58
add dword [ebp - 0x4c], 0x30c
cmp dword [ebp - 0x4c], 0x924
mov eax, dword [ebp - 0x54]
jl 0x4c00ba
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x374]
add eax, 0x2b0c
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 2
call fcn.00493639
push eax
push str._character_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x374]
add eax, 0x2b16
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 3
call fcn.00493639
push eax
push str._character_descr_1_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x374]
add eax, 0x2b20
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 4
call fcn.00493639
push eax
push str._character_descr_2_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x35c]
add eax, 0x2b70
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 5
call fcn.00493639
push eax
push str._bike_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x364]
add eax, 0x2b8e
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 6
call fcn.00493639
push eax
push str._bike_category_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x364]
add eax, 0x8b0
lea eax, [eax + eax*4]
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 7
call fcn.00493639
push eax
push str._subcatbike1_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x364]
lea eax, [eax + eax*4 + 0x2b71]
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 8
call fcn.00493639
push eax
push str._subcatbike2_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x364]
lea eax, [eax + eax*4 + 0x2b72]
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 9
call fcn.00493639
push eax
push str._subcatbike3_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
push dword [ebx + eax*4 + 0x35c]
mov ecx, ebx
push 1
call fcn.0040368a
mov ecx, eax
call fcn.0040181f
test al, al
je 0x4c03fd
push 0x641cfa
push str._bike_unlock_condition_
mov ecx, esi
call fcn.004bfd5a
jmp 0x4c0448
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x35c]
add eax, 0x2b98
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0xa
call fcn.00493639
push eax
push str._bike_unlock_condition_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
lea eax, [ebx + eax*4 + 0x364]
cmp dword [eax], 3
je 0x4c04ef
mov eax, dword [eax]
lea eax, [eax + eax*4 + 0x2b73]
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0xb
call fcn.00493639
push eax
push str._subcatbike4_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x364]
lea eax, [eax + eax*4 + 0x2b74]
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0xc
call fcn.00493639
push eax
push str._subcatbike5_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
jmp 0x4c0511
push 0x641cfa
push str._subcatbike4_name_
mov ecx, esi
call fcn.004bfd5a
push 0x641cfa
push str._subcatbike5_name_
mov ecx, esi
call fcn.004bfd5a
push edi
lea eax, [ebp - 0x2c]
push 0x2b5e
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0xd
call fcn.00493639
push eax
push str._bike_speed_text_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
push edi
lea eax, [ebp - 0x2c]
push 0x2b5f
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0xe
call fcn.00493639
push eax
push str._bike_handling_text_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
push edi
lea eax, [ebp - 0x2c]
push 0x2b60
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0xf
call fcn.00493639
push eax
push str._bike_weight_text_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
push edi
lea eax, [ebp - 0x2c]
push 0x2b61
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x10
call fcn.00493639
push eax
push str._bike_grip_text_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
push dword [ebx + eax*4 + 0x35c]
mov ecx, ebx
push 1
call fcn.0040368a
mov ecx, eax
call fcn.0040181f
mov ecx, esi
push edi
test al, al
push 6
je 0x4c0748
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x35c]
shl eax, 4
push dword [eax + 0x6a5ba8]
lea eax, [ebp - 0x2c]
push eax
call fcn.004bc13e
mov ecx, eax
mov dword [ebp - 4], 0x11
call fcn.00493639
push eax
push str._bike_speed_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x35c]
push edi
push 6
shl eax, 4
push dword [eax + 0x6a5bac]
lea eax, [ebp - 0x2c]
push eax
mov ecx, esi
call fcn.004bc13e
mov ecx, eax
mov dword [ebp - 4], 0x12
call fcn.00493639
push eax
push str._bike_handling_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x35c]
push edi
push 6
shl eax, 4
push dword [eax + 0x6a5bb0]
lea eax, [ebp - 0x2c]
push eax
mov ecx, esi
call fcn.004bc13e
mov ecx, eax
mov dword [ebp - 4], 0x13
call fcn.00493639
push eax
push str._bike_weight_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebx + 0x394]
mov eax, dword [ebx + eax*4 + 0x35c]
push edi
push 6
shl eax, 4
push dword [eax + 0x6a5bb4]
lea eax, [ebp - 0x2c]
push eax
mov ecx, esi
call fcn.004bc13e
mov ecx, eax
mov dword [ebp - 4], 0x14
call fcn.00493639
push eax
push str._bike_grip_
jmp 0x4c0808
push edi
lea eax, [ebp - 0x2c]
push eax
call fcn.004bc13e
mov ecx, eax
mov dword [ebp - 4], 0x15
call fcn.00493639
push eax
push str._bike_speed_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
push edi
push 6
push edi
lea eax, [ebp - 0x2c]
push eax
mov ecx, esi
call fcn.004bc13e
mov ecx, eax
mov dword [ebp - 4], 0x16
call fcn.00493639
push eax
push str._bike_handling_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
push edi
push 6
push edi
lea eax, [ebp - 0x2c]
push eax
mov ecx, esi
call fcn.004bc13e
mov ecx, eax
mov dword [ebp - 4], 0x17
call fcn.00493639
push eax
push str._bike_grip_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
push edi
push 6
push edi
lea eax, [ebp - 0x2c]
push eax
mov ecx, esi
call fcn.004bc13e
mov ecx, eax
mov dword [ebp - 4], 0x18
call fcn.00493639
push eax
push str._bike_weight_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
cmp dword [ebx + 0x390], 2
jne 0x4c086a
mov eax, dword [ebx + 0x394]
add eax, 0x2b29
push edi
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x19
call fcn.00493639
push eax
push str._turn_player_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
jmp 0x4c087b
push 0x641cfa
push str._turn_player_
mov ecx, esi
call fcn.004bfd5a
mov edi, dword [ebx + 0x324]
call fcn.00402368
mov eax, dword [eax + edi*4 + 0x244]
cmp eax, 8
jg 0x4c089d
mov dword [ebp - 0x60], eax
lea ecx, [eax + 8]
add eax, 0x10
jmp 0x4c08b9
cmp eax, 0x10
jg 0x4c08b0
lea ecx, [eax - 8]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x60], ecx
add eax, 8
jmp 0x4c08bc
lea ecx, [eax - 0x10]
mov dword [ebp - 0x60], ecx
lea ecx, [eax - 8]
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x60]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x64], 2
mov dword [ebp - 0x4c], 1
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp + eax*4 - 0x60]
mov edi, dword [ecx]
push eax
mov dword [ebp - 0x68], edi
call fcn.00402368
mov ecx, eax
call fcn.004018a0
push edi
mov dword [ebp - 0x54], eax
call fcn.00402368
mov ecx, eax
call fcn.004018a0
mov ecx, dword [ebp - 0x54]
cmp eax, ecx
jle 0x4c0918
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp + ecx*4 - 0x60]
mov edx, dword [ebp - 0x50]
mov dword [edx], eax
mov eax, edi
mov dword [ebp + ecx*4 - 0x60], eax
inc dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], 3
jl 0x4c08d3
add dword [ebp - 0x50], 4
dec dword [ebp - 0x64]
jne 0x4c08cc
mov eax, dword [ebp - 0x60]
add eax, 0x2d59
push 0
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x1a
call fcn.00493639
push eax
push str._track_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov edi, 0x641cfa
push edi
push str._track_locked_
mov ecx, esi
call fcn.004bfd5a
cmp dword [ebx + 0x390], 1
jne 0x4c0a64
call fcn.00402368
mov ecx, dword [ebp - 0x60]
mov eax, dword [eax + ecx*4 + 0x2a8]
add eax, 0x2d78
push 0
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x1b
call fcn.00493639
push eax
push str._trackmission_1_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
call fcn.00402368
mov ecx, dword [ebp - 0x5c]
mov eax, dword [eax + ecx*4 + 0x2a8]
add eax, 0x2d78
push 0
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x1c
call fcn.00493639
push eax
push str._trackmission_2_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
call fcn.00402368
mov ecx, dword [ebp - 0x58]
mov eax, dword [eax + ecx*4 + 0x2a8]
add eax, 0x2d78
push 0
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x1d
call fcn.00493639
push eax
push str._trackmission_3_name_
jmp 0x4c0ab0
mov eax, dword [ebx + 0x324]
inc eax
inc eax
cdq
push 3
pop ecx
idiv ecx
mov dword [ebp - 0x54], eax
call fcn.00402368
mov ecx, dword [ebp - 0x54]
mov eax, dword [eax + ecx*4 + 0x30c]
add eax, 0x2d80
push 0
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x1e
call fcn.00493639
push eax
push str._trackmission_1_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x50], eax
mov eax, dword [esi + 0x3a8]
cmp eax, 2
jne 0x4c0ad9
mov eax, dword [ebp - 0x5c]
jmp 0x4c0ae1
cmp eax, 3
jne 0x4c0ae4
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
add eax, 0x2db3
push 0
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x1f
call fcn.00493639
push eax
push str._mission_name_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
push edi
push str._briefing_new_
mov ecx, esi
call fcn.004bfd5a
cmp dword [esi + 0x3a4], 0
je 0x4c0c38
mov eax, dword [esi + 0x3a8]
test eax, eax
jle 0x4c0c38
cmp eax, 3
jg 0x4c0c38
push eax
lea eax, [ebp - 0x48]
push str.mission_d
push eax
call fcn.00493ef3
add esp, 0xc
mov eax, dword [esi + 0x1d4]
mov edi, dword [eax]
push 0
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], 0x20
call fcn.00493639
mov ecx, dword [esi + 0x1d4]
push eax
call dword [edi + 0x28]
test al, al
je 0x4c0c27
mov eax, dword [esi + 0x1d4]
mov edi, dword [eax]
push 0
lea ecx, [ebp - 0x48]
call fcn.00493639
mov ecx, dword [esi + 0x1d4]
push eax
call dword [edi + 0x2c]
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x34]
test al, al
jne 0x4c0bc7
mov dword [esi + 0x3ac], 1
jmp 0x4c0c27
mov eax, dword [esi + 0x3a8]
push dword [ebp + eax*4 - 0x64]
and dword [esi + 0x3ac], 0
push 1
mov ecx, ebx
call fcn.0040368a
mov ecx, eax
call fcn.004bb694
test al, al
jne 0x4c0c27
push 0
lea eax, [ebp - 0x2c]
push 0x2d52
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov byte [ebp - 4], 0x21
call fcn.00493639
push eax
push str._briefing_new_
mov ecx, esi
call fcn.004bfd5a
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x20
call fcn.00402a58
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x48]
call fcn.00402a58
mov edi, 0x641cfa
cmp dword [esi + 0x3ac], 0
jne 0x4c0d79
cmp dword [ebx + 0x54], 1
mov eax, dword [ebp - 0x50]
push 0
jne 0x4c0c6f
add eax, 0x2de5
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov dword [ebp - 4], 0x22
jmp 0x4c0cc6
add eax, 0x2dfe
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d81f
test al, al
mov eax, dword [ebp - 0x50]
push 0
je 0x4c0ca9
add eax, 0x2dfe
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov dword [ebp - 4], 0x23
jmp 0x4c0cc6
add eax, 0x2de5
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov dword [ebp - 4], 0x24
mov ecx, eax
call fcn.00493639
push eax
mov ecx, esi
push str._mission_welcome_
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebp - 0x50]
add eax, 0x2e17
push 0
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x25
call fcn.00493639
push eax
push str._mission_silver_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
mov eax, dword [ebp - 0x50]
add eax, 0x2e49
push 0
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x26
call fcn.00493639
push eax
push str._mission_gold_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
push edi
push str._mission_unlock_condition_
mov ecx, esi
call fcn.004bfd5a
jmp 0x4c0de2
push edi
push str._mission_welcome_
mov ecx, esi
call fcn.004bfd5a
push edi
push str._mission_silver_
mov ecx, esi
call fcn.004bfd5a
push edi
push str._mission_gold_
mov ecx, esi
call fcn.004bfd5a
mov eax, dword [ebp - 0x50]
add eax, 0x2e7b
push 0
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x27
call fcn.00493639
push eax
push str._mission_unlock_condition_
mov ecx, esi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
push edi
push str._mission1_new_
mov ecx, esi
call fcn.004bfd5a
push edi
push str._mission2_new_
mov ecx, esi
call fcn.004bfd5a
push edi
push str._mission3_new_
mov ecx, esi
call fcn.004bfd5a
lea eax, [ebp - 0x60]
mov dword [ebp - 0x4c], 1
mov dword [ebp - 0x50], eax
push dword [ebp - 0x4c]
lea eax, [ebp - 0x48]
push str.mission_d
push eax
call fcn.00493ef3
add esp, 0xc
mov eax, dword [esi + 0x1d4]
mov edi, dword [eax]
push 0
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], 0x28
call fcn.00493639
mov ecx, dword [esi + 0x1d4]
push eax
call dword [edi + 0x28]
test al, al
je 0x4c0f07
mov eax, dword [esi + 0x1d4]
mov edi, dword [eax]
push 0
lea ecx, [ebp - 0x48]
call fcn.00493639
mov ecx, dword [esi + 0x1d4]
push eax
call dword [edi + 0x2c]
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x34]
test al, al
je 0x4c0f07
mov eax, dword [ebp - 0x50]
push dword [eax]
mov ecx, ebx
push 1
call fcn.0040368a
mov ecx, eax
call fcn.004bb694
test al, al
jne 0x4c0f07
push 0
lea eax, [ebp - 0xac]
push 0x2d52
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov edi, eax
push dword [ebp - 0x4c]
lea eax, [ebp - 0x2c]
push str.__mission_d_new__
push eax
mov byte [ebp - 4], 0x29
call fcn.00493ef3
add esp, 0xc
mov dword [ebp - 0x54], eax
mov ecx, edi
mov byte [ebp - 4], 0x2a
call fcn.00493639
mov ecx, dword [ebp - 0x54]
push eax
call fcn.00493639
push eax
mov ecx, esi
call fcn.004bfd5a
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x29
call fcn.00402a58
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x28
call fcn.00402a58
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x48]
call fcn.00402a58
inc dword [ebp - 0x4c]
add dword [ebp - 0x50], 4
cmp dword [ebp - 0x4c], 3
jle 0x4c0e16
mov ecx, dword [ebx + 0x324]
lea eax, [ecx - 1]
push 3
cdq
pop edi
idiv edi
test edx, edx
je 0x4c0f4e
lea eax, [ecx - 1]
mov dword [ebp - 0x4c], eax
dec ecx
dec dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
push 3
cdq
pop edi
idiv edi
test edx, edx
jne 0x4c0f3d
mov eax, ecx
imul eax, eax, 0xcc
add ecx, 0xc
imul ecx, ecx, 0xcc
mov dword [ebp - 0x64], eax
add eax, 0x940
mov dword [ebp - 0x50], 1
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x54], 5
jmp 0x4c0f83
mov esi, dword [ebp - 0x90]
mov edi, 0x655920
push edi
lea ecx, [ebp - 0x11c]
call fcn.00493e85
push edi
lea ecx, [ebp - 0x48]
mov dword [ebp - 4], 0x2b
call fcn.00493e85
push dword [ebp - 0x50]
lea eax, [ebp - 0x2a4]
push str.stat_bestname_d
push eax
mov byte [ebp - 4], 0x2c
call fcn.00493ef3
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x330]
push eax
mov byte [ebp - 4], 0x2d
call fcn.00494034
lea ecx, [ebp - 0x11c]
push ecx
push eax
lea eax, [ebp - 0x234]
push eax
mov byte [ebp - 4], 0x2e
call fcn.00494034
add esp, 0x24
mov dword [ebp - 0x88], eax
push 1
mov ecx, ebx
mov byte [ebp - 4], 0x2f
call fcn.0040368a
mov ecx, dword [ebp - 0x68]
add eax, ecx
mov ecx, dword [ebp - 0x88]
push eax
call fcn.00493639
push eax
mov ecx, esi
call fcn.004bfd5a
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 0x2e
call fcn.00402a58
lea ecx, [ebp - 0x330]
mov byte [ebp - 4], 0x2d
call fcn.00402a58
lea ecx, [ebp - 0x2a4]
mov byte [ebp - 4], 0x2c
call fcn.00402a58
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x2b
call fcn.00402a58
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x11c]
call fcn.00402a58
push edi
lea ecx, [ebp - 0x138]
call fcn.00493e85
push edi
lea ecx, [ebp - 0x154]
mov dword [ebp - 4], 0x30
call fcn.00493e85
push 1
mov ecx, ebx
mov byte [ebp - 4], 0x31
call fcn.0040368a
mov ecx, dword [ebp - 0x4c]
fld dword [eax + ecx - 0x64]
push ecx
lea eax, [ebp - 0x2dc]
fstp dword [esp]
push eax
mov ecx, esi
call fcn.004bd094
mov dword [ebp - 0x88], eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x1a8]
push str.stat_besttime_d
push eax
mov byte [ebp - 4], 0x32
call fcn.00493ef3
push eax
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0x314]
push eax
mov byte [ebp - 4], 0x33
call fcn.00494034
lea ecx, [ebp - 0x138]
push ecx
push eax
lea eax, [ebp - 0x1fc]
push eax
mov byte [ebp - 4], 0x34
call fcn.00494034
add esp, 0x24
mov dword [ebp - 0x8c], eax
mov ecx, dword [ebp - 0x88]
mov byte [ebp - 4], 0x35
call fcn.00493639
mov ecx, dword [ebp - 0x8c]
push eax
call fcn.00493639
push eax
mov ecx, esi
call fcn.004bfd5a
lea ecx, [ebp - 0x1fc]
mov byte [ebp - 4], 0x34
call fcn.00402a58
lea ecx, [ebp - 0x314]
mov byte [ebp - 4], 0x33
call fcn.00402a58
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x32
call fcn.00402a58
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 4], 0x31
call fcn.00402a58
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x30
call fcn.00402a58
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x138]
call fcn.00402a58
push 1
mov ecx, ebx
call fcn.0040368a
mov ecx, dword [ebp - 0x4c]
cmp dword [eax + ecx], 0xffffffff
push edi
je 0x4c12a4
lea ecx, [ebp - 0x100]
call fcn.00493e85
push edi
lea ecx, [ebp - 0x18c]
mov dword [ebp - 4], 0x36
call fcn.00493e85
push 1
mov ecx, ebx
mov byte [ebp - 4], 0x37
call fcn.0040368a
mov ecx, dword [ebp - 0x4c]
mov eax, dword [eax + ecx]
add eax, 0x510e
push 0
push eax
lea eax, [ebp - 0x1e0]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov edi, eax
push dword [ebp - 0x50]
lea eax, [ebp - 0x1c4]
push str.stat_bestbike_d
push eax
mov byte [ebp - 4], 0x38
call fcn.00493ef3
push eax
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x34c]
push eax
mov byte [ebp - 4], 0x39
call fcn.00494034
lea ecx, [ebp - 0x100]
push ecx
push eax
lea eax, [ebp - 0x26c]
push eax
mov byte [ebp - 4], 0x3a
call fcn.00494034
add esp, 0x24
mov dword [ebp - 0x8c], eax
mov ecx, edi
mov byte [ebp - 4], 0x3b
call fcn.00493639
mov ecx, dword [ebp - 0x8c]
push eax
call fcn.00493639
push eax
mov ecx, esi
call fcn.004bfd5a
lea ecx, [ebp - 0x26c]
mov byte [ebp - 4], 0x3a
call fcn.00402a58
lea ecx, [ebp - 0x34c]
mov byte [ebp - 4], 0x39
call fcn.00402a58
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 4], 0x38
call fcn.00402a58
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 4], 0x37
call fcn.00402a58
lea ecx, [ebp - 0x18c]
mov byte [ebp - 4], 0x36
call fcn.00402a58
lea ecx, [ebp - 0x100]
jmp 0x4c1367
lea ecx, [ebp - 0xc8]
call fcn.00493e85
push edi
lea ecx, [ebp - 0x170]
mov dword [ebp - 4], 0x3c
call fcn.00493e85
push dword [ebp - 0x50]
lea eax, [ebp - 0x288]
push str.stat_bestbike_d
push eax
mov byte [ebp - 4], 0x3d
call fcn.00493ef3
push eax
lea eax, [ebp - 0x170]
push eax
lea eax, [ebp - 0x250]
push eax
mov byte [ebp - 4], 0x3e
call fcn.00494034
lea ecx, [ebp - 0xc8]
push ecx
push eax
lea eax, [ebp - 0x218]
push eax
mov byte [ebp - 4], 0x3f
call fcn.00494034
add esp, 0x24
push 0x6551e8
mov ecx, eax
mov byte [ebp - 4], 0x40
call fcn.00493639
push eax
mov ecx, esi
call fcn.004bfd5a
lea ecx, [ebp - 0x218]
mov byte [ebp - 4], 0x3f
call fcn.00402a58
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0x3e
call fcn.00402a58
lea ecx, [ebp - 0x288]
mov byte [ebp - 4], 0x3d
call fcn.00402a58
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0x3c
call fcn.00402a58
lea ecx, [ebp - 0xc8]
or dword [ebp - 4], 0xffffffff
call fcn.00402a58
push 1
mov ecx, ebx
call fcn.0040368a
mov ecx, dword [ebp - 0x64]
lea esi, [eax + ecx + 0x9b8]
lea edi, [ebp - 0x60]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push dword [ebp - 0x58]
lea eax, [ebp - 0x2c]
push dword [ebp - 0x5c]
push dword [ebp - 0x60]
push str._02d__02d__04d
push eax
call fcn.00493ef3
add esp, 0x14
mov esi, 0x655920
push esi
lea ecx, [ebp - 0xac]
mov dword [ebp - 4], 0x41
call fcn.00493e85
push esi
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x42
call fcn.00493e85
push dword [ebp - 0x50]
lea eax, [ebp - 0x84]
push str.stat_bestdate_d
push eax
mov byte [ebp - 4], 0x43
call fcn.00493ef3
push eax
lea eax, [ebp - 0xe4]
push eax
lea eax, [ebp - 0x2f8]
push eax
mov byte [ebp - 4], 0x44
call fcn.00494034
lea ecx, [ebp - 0xac]
push ecx
push eax
lea eax, [ebp - 0x2c0]
push eax
mov byte [ebp - 4], 0x45
call fcn.00494034
add esp, 0x24
mov esi, eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x46
call fcn.00493639
push eax
mov ecx, esi
call fcn.00493639
mov ecx, dword [ebp - 0x90]
push eax
call fcn.004bfd5a
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 4], 0x45
call fcn.00402a58
lea ecx, [ebp - 0x2f8]
mov byte [ebp - 4], 0x44
call fcn.00402a58
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0x43
call fcn.00402a58
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x42
call fcn.00402a58
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x41
call fcn.00402a58
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
add dword [ebp - 0x68], 0x10
add dword [ebp - 0x4c], 4
add dword [ebp - 0x64], 0xc
inc dword [ebp - 0x50]
dec dword [ebp - 0x54]
jne 0x4c0f7d
mov al, byte [ebx + 0x11cf]
xor esi, esi
neg al
push esi
sbb eax, eax
add eax, 0x2cf3
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x47
call fcn.00493639
mov edi, dword [ebp - 0x90]
push eax
push str._autosave_status_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
push esi
lea eax, [ebp - 0x84]
push 0x50fa
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x48
call fcn.00493639
push eax
push str._deb_dot_mp_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov dword [ebp - 0x4c], esi
lea esi, [ebx + 0x3ac]
push dword [ebp - 0x4c]
lea eax, [ebp - 0x2c]
push str.__deb_dot_d__
push eax
call fcn.00493ef3
add esp, 0xc
push esi
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0x49
call fcn.00493639
push eax
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00402a58
inc dword [ebp - 0x4c]
add esi, 0x200
cmp dword [ebp - 0x4c], 5
jl 0x4c1549
mov eax, dword [ebx + 0x388]
cmp eax, 9
jne 0x4c1795
mov eax, dword [ebx + 0xdb4]
mov ecx, dword [ebx + 0xdb8]
cmp eax, ecx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x50], ecx
jle 0x4c15b7
mov eax, ecx
add eax, 0xc1b
push 0
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x4a
call fcn.00493639
push eax
push str._deb_mp_winnerpoints_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov ecx, dword [ebp - 0x50]
xor eax, eax
cmp dword [ebp - 0x4c], ecx
mov esi, 0x5082
setg al
push 0
add eax, esi
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x4b
call fcn.00493639
push eax
push str._deb_mp_winner_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov ecx, dword [ebp - 0x50]
xor eax, eax
cmp dword [ebp - 0x4c], ecx
push 0
setg al
mov eax, dword [ebx + eax*4 + 0x360]
add eax, 0x510e
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x4c
call fcn.00493639
push eax
push str._deb_mp_winnerbike_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0x4c], eax
jle 0x4c16b0
mov eax, dword [ebp - 0x4c]
add eax, 0xc1b
push 0
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x4d
call fcn.00493639
push eax
push str._deb_mp_looserpoints_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov ecx, dword [ebp - 0x50]
xor eax, eax
cmp dword [ebp - 0x4c], ecx
push 0
setle al
add eax, esi
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x4e
call fcn.00493639
push eax
push str._deb_mp_looser_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov ecx, dword [ebp - 0x50]
xor eax, eax
cmp dword [ebp - 0x4c], ecx
push 0
setle al
mov eax, dword [ebx + eax*4 + 0x360]
add eax, 0x510e
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x4f
call fcn.00493639
push eax
push str._deb_mp_looserbike_
mov ecx, edi
call fcn.004bfd5a
lea ecx, [ebp - 0x84]
jmp 0x4c1983
cmp eax, 8
jne 0x4c198c
mov eax, dword [ebx + 0xfe8]
mov ecx, dword [ebx + 0xfec]
cmp eax, ecx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], ecx
jg 0x4c17b6
mov eax, ecx
push eax
lea eax, [ebp - 0x84]
push 0x6452f0
push eax
call fcn.00493ef3
add esp, 0xc
mov ecx, eax
mov dword [ebp - 4], 0x50
call fcn.00493639
push eax
push str._deb_mp_winnerpoints_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov ecx, dword [ebp - 0x4c]
xor eax, eax
cmp dword [ebp - 0x50], ecx
mov esi, 0x5082
setle al
push 0
add eax, esi
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x51
call fcn.00493639
push eax
push str._deb_mp_winner_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov ecx, dword [ebp - 0x4c]
xor eax, eax
cmp dword [ebp - 0x50], ecx
push 0
setle al
mov eax, dword [ebx + eax*4 + 0x360]
add eax, 0x510e
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x52
call fcn.00493639
push eax
push str._deb_mp_winnerbike_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x50], eax
jg 0x4c18a9
mov eax, dword [ebp - 0x50]
push eax
lea eax, [ebp - 0x84]
push 0x6452f0
push eax
call fcn.00493ef3
add esp, 0xc
mov ecx, eax
mov dword [ebp - 4], 0x53
call fcn.00493639
push eax
push str._deb_mp_looserpoints_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov ecx, dword [ebp - 0x4c]
xor eax, eax
cmp dword [ebp - 0x50], ecx
push 0
setg al
add eax, esi
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x54
call fcn.00493639
push eax
push str._deb_mp_looser_
mov ecx, edi
call fcn.004bfd5a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84]
call fcn.00402a58
mov ecx, dword [ebp - 0x4c]
xor eax, eax
cmp dword [ebp - 0x50], ecx
push 0
setg al
mov eax, dword [ebx + eax*4 + 0x360]
add eax, 0x510e
push eax
lea eax, [ebp - 0x368]
push eax
call fcn.00403795
mov ecx, eax
call fcn.0048d781
mov ecx, eax
mov dword [ebp - 4], 0x55
call fcn.00493639
push eax
push str._deb_mp_looserbike_
mov ecx, edi
call fcn.004bfd5a
lea ecx, [ebp - 0x368]
or dword [ebp - 4], 0xffffffff
call fcn.00402a58
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
pop ebx
call fcn.006009d4
leave
ret