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

Disassembly:
sub esp, 0x18
mov edx, dword [esp + 0x1c]
push ebp
push esi
push edi
mov ebp, ecx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x10]
push ecx
push edx
mov ecx, ebp
mov dword [esp + 0x24], ebp
xor esi, esi
call fcn.00521950
test eax, eax
mov dword [esp + 0x28], eax
je 0x52214d
push str.CDynamicDataManager::LoadWheeledVehicleData
push 0x123
push str.DynamicData.cpp
call fcn.004bdd70
push 0xc
push 0x2a0
call fcn.004be2d0
mov edx, eax
add esp, 0x14
test edx, edx
je 0x521cd8
mov ecx, 0xa8
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov edi, edx
jmp 0x521cda
xor edi, edi
push edi
lea eax, [esp + 0x2c]
push 0x5eb3ac
push eax
call fcn.004c0e10
mov eax, dword [esp + 0x18]
add esp, 0xc
cmp eax, 2
jae 0x521d03
fld dword [edi]
fmul dword [0x5dfea4]
fstp dword [edi + 4]
jmp 0x521d19
lea ecx, [edi + 4]
push ecx
lea edx, [esp + 0x2c]
push 0x5eb3ac
push edx
call fcn.004c0e10
add esp, 0xc
push ebx
lea eax, [edi + 8]
push eax
lea ecx, [esp + 0x30]
push 0x5eb3ac
push ecx
call fcn.004c0e10
lea eax, [edi + 0xc]
push eax
lea edx, [esp + 0x3c]
push 0x5eb3ac
push edx
call fcn.004c0e10
lea eax, [edi + 0x10]
push eax
lea ecx, [esp + 0x48]
push 0x5eb3ac
push ecx
call fcn.004c0e10
add esp, 0x24
lea esi, [edi + 0x14]
mov ebx, 3
mov edi, edi
push esi
lea edx, [esp + 0x30]
push 0x5eb3ac
push edx
call fcn.004c0e10
add esp, 0xc
add esi, 4
dec ebx
jne 0x521d60
lea esi, [edi + 0x20]
mov ebx, 3
push esi
lea eax, [esp + 0x30]
push 0x5eb3ac
push eax
call fcn.004c0e10
add esp, 0xc
add esi, 4
dec ebx
jne 0x521d81
lea esi, [edi + 0x2c]
mov ebx, 3
push esi
lea ecx, [esp + 0x30]
push 0x5eb3ac
push ecx
call fcn.004c0e10
add esp, 0xc
add esi, 4
dec ebx
jne 0x521da2
lea esi, [edi + 0x38]
mov ebx, 3
push esi
lea edx, [esp + 0x30]
push 0x5eb3ac
push edx
call fcn.004c0e10
add esp, 0xc
add esi, 4
dec ebx
jne 0x521dc3
lea eax, [edi + 0x44]
push eax
lea ecx, [esp + 0x30]
push 0x5eb3ac
push ecx
call fcn.004c0e10
lea edx, [edi + 0x48]
push edx
lea eax, [esp + 0x3c]
push 0x5eb3ac
push eax
call fcn.004c0e10
lea ecx, [edi + 0x4c]
push ecx
lea edx, [esp + 0x48]
push 0x5eb3ac
push edx
call fcn.004c0e10
lea eax, [edi + 0x50]
push eax
lea ecx, [esp + 0x54]
push 0x5eb3ac
push ecx
call fcn.004c0e10
lea edx, [edi + 0x54]
push edx
lea eax, [esp + 0x60]
push 0x5eb3ac
push eax
call fcn.004c0e10
lea ecx, [edi + 0x58]
push ecx
lea edx, [esp + 0x6c]
push 0x5eb3ac
push edx
call fcn.004c0e10
add esp, 0x48
lea eax, [edi + 0x5c]
push eax
lea ecx, [esp + 0x30]
push 0x5eb3ac
push ecx
call fcn.004c0e10
lea edx, [edi + 0x60]
push edx
lea eax, [esp + 0x3c]
push 0x5eb3ac
push eax
call fcn.004c0e10
lea ecx, [edi + 0x64]
push ecx
lea edx, [esp + 0x48]
push 0x5eb3ac
push edx
call fcn.004c0e10
mov eax, dword [esp + 0x34]
mov esi, 5
add esp, 0x24
cmp eax, esi
jb 0x521ec5
lea eax, [edi + 0x70]
push eax
lea ecx, [esp + 0x30]
push 0x5eb3ac
push ecx
call fcn.004c0e10
lea edx, [edi + 0x74]
push edx
lea eax, [esp + 0x3c]
push 0x5eb3ac
push eax
call fcn.004c0e10
add esp, 0x18
jmp 0x521ed3
mov dword [edi + 0x70], 0x42480000
mov dword [edi + 0x74], 0xbf800000
lea ecx, [edi + 0x68]
push ecx
lea edx, [esp + 0x30]
push 0x5eb3ac
push edx
call fcn.004c0e10
mov eax, dword [esp + 0x1c]
add esp, 0xc
cmp eax, esi
jae 0x521f08
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x30]
push 0x5eb3ac
push ecx
call fcn.004c0e10
add esp, 0xc
lea edx, [edi + 0x6c]
push edx
lea eax, [esp + 0x30]
push 0x5eb3ac
push eax
call fcn.004c0e10
lea esi, [edi + 0x78]
push esi
lea ecx, [esp + 0x3c]
push 0x5db08c
push ecx
call fcn.004c0e10
mov eax, dword [esi]
add esp, 0x18
test eax, eax
mov dword [esp + 0x18], 0
jle 0x522056
mov ebp, 0x23
mov dword [esp + 0x14], ebp
lea esi, [edi + 0x80]
jmp 0x521f58
mov ebp, dword [esp + 0x14]
lea edx, [esi - 4]
push edx
lea eax, [esp + 0x30]
push 0x5db08c
push eax
call fcn.004c0e10
push esi
lea ecx, [esp + 0x3c]
push 0x5eb3ac
push ecx
call fcn.004c0e10
lea edx, [esi + 4]
push edx
lea eax, [esp + 0x48]
push 0x5eb3ac
push eax
call fcn.004c0e10
lea ecx, [esi + 8]
push ecx
lea edx, [esp + 0x54]
push 0x5db08c
push edx
call fcn.004c0e10
add esp, 0x30
xor ebx, ebx
lea eax, [ebx + ebp]
lea ecx, [edi + eax*4]
push ecx
lea edx, [esp + 0x30]
push 0x5eb3ac
push edx
call fcn.004c0e10
mov eax, dword [esp + 0x1c]
add esp, 0xc
cmp eax, 5
jae 0x521fd4
cmp ebx, 1
jne 0x521fd4
mov eax, dword [edi + 0xc]
mov dword [edi + ebp*4 + 4], eax
inc ebx
cmp ebx, 3
jl 0x521fa6
lea ecx, [esi + 0x18]
push ecx
lea edx, [esp + 0x30]
push 0x5eb3ac
push edx
call fcn.004c0e10
add esp, 0xc
lea ebx, [esi + 0x1c]
mov ebp, 3
jmp 0x522000
push ebx
lea eax, [esp + 0x30]
push 0x5eb3ac
push eax
call fcn.004c0e10
add esp, 0xc
add ebx, 4
dec ebp
jne 0x522000
lea ecx, [esp + 0x2c]
push ecx
call fcn.00521860
mov ebx, dword [esp + 0x18]
mov dword [esi + 0x28], eax
mov eax, dword [esp + 0x1c]
add esp, 4
mov dword [esi + 0x2c], 0
mov ecx, dword [edi + 0x78]
inc eax
add ebx, 0xd
add esi, 0x34
cmp eax, ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], ebx
jl 0x521f54
mov ebp, dword [esp + 0x1c]
lea esi, [edi + 0x21c]
push esi
lea edx, [esp + 0x30]
push 0x5db08c
push edx
call fcn.004c0e10
mov eax, dword [esi]
add esp, 0xc
test eax, eax
mov dword [esp + 0x18], 0
jle 0x522114
lea esi, [edi + 0x22c]
lea ebx, [esi - 0xc]
mov ebp, 3
nop
push ebx
lea eax, [esp + 0x30]
push 0x5eb3ac
push eax
call fcn.004c0e10
add esp, 0xc
add ebx, 4
dec ebp
jne 0x522090
push esi
lea ecx, [esp + 0x30]
push 0x5eb3ac
push ecx
call fcn.004c0e10
lea edx, [esi + 4]
push edx
lea eax, [esp + 0x3c]
push 0x5eb3ac
push eax
call fcn.004c0e10
lea ecx, [esi + 8]
push ecx
lea edx, [esp + 0x48]
push 0x5eb3ac
push edx
call fcn.004c0e10
lea eax, [esp + 0x50]
push eax
call fcn.00521860
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x40]
add esp, 0x28
mov dword [esi + 0x10], 0
mov ecx, dword [edi + 0x21c]
inc eax
add esi, 0x20
cmp eax, ecx
mov dword [esp + 0x18], eax
jl 0x522087
mov ebp, dword [esp + 0x1c]
cmp dword [ebp], 0
pop ebx
je 0x522142
push str.CDynamicDataManager::CloseDynamicFile
push 0xfa
push str.DynamicData.cpp
call fcn.004bdd70
mov ecx, dword [ebp]
push ecx
call fcn.004be3b0
add esp, 0x10
mov dword [ebp], 0
mov eax, edi
pop edi
pop esi
pop ebp
add esp, 0x18
ret 4
pop edi
mov eax, esi
pop esi
pop ebp
add esp, 0x18
ret 4