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

Disassembly:
sub esp, 0x104
push ebp
push esi
push edi
mov edi, dword [esp + 0x114]
test edi, edi
je 0x440499
cmp byte [edi], 0
jne 0x4404a8
push str.CM_LoadMap:_NULL_name
push 1
call fcn.0044d230
add esp, 8
push 0x200
push 0x5435c4
push str.cm_noAreas
call fcn.0044f740
push 0x200
push 0x5435c4
push str.cm_noCurves
mov dword [0xed9ef4], eax
call fcn.0044f740
push 0x201
push 0x543784
push str.cm_playerCurveClip
mov dword [0xed9dd8], eax
call fcn.0044f740
push 0x200
push 0x5435c4
push str.cm_FCMcacheall
mov dword [0xed9ef8], eax
call fcn.0044f740
push 0x200
push 0x5435c4
push str.cm_FCMdebug
mov dword [0xed9ed8], eax
call fcn.0044f740
push 0x200
push 0x543784
push str.cm_ter_usesphere
mov dword [0xed9ee4], eax
call fcn.0044f740
mov ebp, dword [esp + 0x160]
add esp, 0x48
mov dword [0xed9ddc], eax
push ebp
push edi
push str.CM_LoadMap___s___i___n
call fcn.0044d120
add esp, 0xc
mov esi, edi
mov eax, 0xed9e00
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x440582
test cl, cl
je 0x44057e
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x440582
add eax, 2
add esi, 2
test cl, cl
jne 0x44055e
xor eax, eax
jmp 0x440587
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4405a8
test ebp, ebp
je 0x4405a8
mov eax, dword [esp + 0x11c]
mov ecx, dword [0x574c94]
pop edi
pop esi
mov dword [eax], ecx
pop ebp
add esp, 0x104
ret
push 0x36
push 0
push 0xed9e00
call fcn.0044f0f0
add esp, 0xc
call fcn.004410a0
cmp byte [edi], 0
jne 0x440607
push 0x38
mov dword [0xed9e6c], 1
mov dword [0xed9e9c], 1
mov dword [0xed9eb4], 1
call fcn.0045da30
mov edx, dword [esp + 0x120]
add esp, 4
mov dword [0xed9e90], eax
pop edi
pop esi
mov dword [edx], 0
pop ebp
add esp, 0x104
ret
call fcn.0042f760
push 1
lea eax, [esp + 0x18]
push 1
push eax
push edi
call fcn.00451540
add esp, 0x10
test eax, eax
jg 0x440632
push edi
push str.Couldnt_load__s
push 1
call fcn.0044d230
add esp, 0xc
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x24]
push ecx
push 0xec
push edx
call fcn.00451aa0
mov eax, dword [0xd8b4c0]
add esp, 0xc
test eax, eax
je 0x44066b
xor esi, esi
mov eax, dword [esp + esi*4 + 0x24]
push eax
call fcn.00464780
add esp, 4
mov dword [esp + esi*4 + 0x24], eax
inc esi
cmp esi, 0x3b
jb 0x440654
mov ecx, dword [esp + 0x11c]
mov eax, dword [esp + 0x2c]
mov dword [ecx], eax
mov dword [0x574c94], eax
mov eax, dword [esp + 0x28]
cmp eax, 0x13
jl 0x440688
jle 0x44069d
push 0x13
push 0x13
push eax
push edi
push str.CM_LoadMap:__s_has_wrong_version_number___i_should_be_between__i_and__i_
push 1
call fcn.0044d230
add esp, 0x18
push 0x54ad38
call fcn.00412820
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x10]
push 0
lea eax, [esp + 0x38]
push edx
push eax
push ecx
call fcn.004403d0
push 0x54ad34
call fcn.00412820
lea edx, [esp + 0x30]
lea eax, [esp + 0x24]
push edx
push eax
call fcn.0043f390
push 0x54ad30
call fcn.00412820
lea ecx, [esp + 0x30]
push ecx
call fcn.00440450
push 0x54ad2c
call fcn.00412820
mov ecx, dword [esp + 0x40]
lea edx, [esp + 0x38]
push 0
lea eax, [esp + 0x68]
push edx
push eax
push ecx
call fcn.004403d0
push 0x54ad28
call fcn.00412820
add esp, 0x40
lea edx, [esp + 0xc]
push edx
call fcn.0043fb00
push 0x54ad24
call fcn.00412820
lea eax, [esp + 0x14]
push eax
call fcn.00440450
push 0x54ad20
call fcn.00412820
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x1c]
push 0
lea edx, [esp + 0x5c]
push ecx
push edx
push eax
call fcn.004403d0
push 0x54ad1c
call fcn.00412820
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x40]
push 0
lea edx, [esp + 0x78]
push ecx
push edx
push eax
call fcn.004403d0
push 0x54ad18
call fcn.00412820
mov ecx, dword [esp + 0x50]
lea edx, [esp + 0x54]
push ecx
lea eax, [esp + 0x48]
push edx
push eax
call fcn.0043fff0
add esp, 0x44
push 0x54ad14
call fcn.00412820
lea ecx, [esp + 0x20]
push ecx
call fcn.00440450
push 0x54ad10
call fcn.00412820
lea edx, [esp + 0x18]
push edx
call fcn.00440450
push 0x54ad0c
call fcn.00412820
mov edx, dword [esp + 0x28]
lea eax, [esp + 0x20]
push 4
lea ecx, [esp + 0x78]
push eax
push ecx
push edx
call fcn.004403d0
push 0x54ad08
mov dword [0x574c98], eax
call fcn.00412820
lea eax, [esp + 0x34]
push eax
call fcn.0043fc40
push 0x54ad04
call fcn.00412820
lea ecx, [esp + 0x3c]
push ecx
call fcn.00440450
push 0x54ad00
call fcn.00412820
mov ecx, dword [esp + 0x4c]
lea edx, [esp + 0x44]
push 0
lea eax, [esp + 0xa4]
push edx
push eax
push ecx
call fcn.004403d0
add esp, 0x48
push 0x54acfc
call fcn.00412820
lea edx, [esp + 0x10]
push edx
call fcn.0043fcd0
push 0x54acf8
call fcn.00412820
lea eax, [esp + 0x18]
push eax
call fcn.00440450
push 0x54acf4
call fcn.00412820
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x20]
push 0
lea edx, [esp + 0x88]
push ecx
push edx
push eax
call fcn.004403d0
push 0x54acf0
call fcn.00412820
mov eax, dword [esp + 0x50]
add esp, 0x28
cmp eax, 0x13
jge 0x44089e
lea ecx, [esp + 0xc]
push ecx
call fcn.0043f9b0
jmp 0x4408a8
lea edx, [esp + 0xc]
push edx
call fcn.0043f880
add esp, 4
push 0x54acec
call fcn.00412820
lea eax, [esp + 0x10]
push eax
call fcn.00440450
push 0x54ace8
call fcn.00412820
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x18]
push 0
lea edx, [esp + 0x88]
push ecx
push edx
push eax
call fcn.004403d0
push 0x54ace4
call fcn.00412820
lea ecx, [esp + 0x2c]
push ecx
call fcn.0043f670
push 0x54ace0
call fcn.00412820
lea edx, [esp + 0x34]
push edx
call fcn.00440450
push 0x54acdc
call fcn.00412820
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x3c]
push 0x20
lea ecx, [esp + 0xb4]
push eax
push ecx
push edx
call fcn.004403d0
add esp, 0x40
mov dword [0x574c9c], eax
push 0x54acd8
call fcn.00412820
lea eax, [esp + 0x10]
push eax
call fcn.0043fd60
push 0x54acd4
call fcn.00412820
lea ecx, [esp + 0x18]
push ecx
call fcn.00440450
push 0x54acd0
call fcn.00412820
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0x20]
push 0
lea eax, [esp + 0xa0]
push edx
push eax
push ecx
call fcn.004403d0
push 0x54accc
call fcn.00412820
lea edx, [esp + 0x34]
push edx
call fcn.0043fe40
push 0x54acc8
call fcn.00412820
lea eax, [esp + 0x3c]
push eax
call fcn.00440450
push 0x54acc4
call fcn.00412820
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x44]
push 0
lea edx, [esp + 0xcc]
push ecx
push edx
push eax
call fcn.004403d0
add esp, 0x48
push 0x54acc0
call fcn.00412820
lea ecx, [esp + 0x10]
push ecx
call fcn.0043f7a0
push 0x54acbc
call fcn.00412820
lea edx, [esp + 0x18]
push edx
call fcn.00440450
push 0x54acb8
call fcn.00412820
mov edx, dword [esp + 0x28]
lea eax, [esp + 0x20]
push 0
lea ecx, [esp + 0xb0]
push eax
push ecx
push edx
call fcn.004403d0
push 0x54acb4
call fcn.00412820
lea eax, [esp + 0x34]
push eax
call fcn.0043f490
push 0x54acb0
call fcn.00412820
lea ecx, [esp + 0x3c]
push ecx
call fcn.00440450
push 0x54acac
call fcn.00412820
mov ecx, dword [esp + 0x4c]
lea edx, [esp + 0x44]
push 0
lea eax, [esp + 0xdc]
push edx
push eax
push ecx
call fcn.004403d0
add esp, 0x48
push 0x54aca8
call fcn.00412820
lea edx, [esp + 0x10]
push edx
call fcn.0043ff30
push 0x54aca4
call fcn.00412820
lea eax, [esp + 0x18]
push eax
call fcn.00440450
push 0x54aca0
call fcn.00412820
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x20]
push 0
lea edx, [esp + 0xc0]
push ecx
push edx
push eax
call fcn.004403d0
push 0x54ac9c
call fcn.00412820
lea ecx, [esp + 0x34]
push ecx
call fcn.0043ff60
push 0x54ac98
call fcn.00412820
lea edx, [esp + 0x3c]
push edx
call fcn.00440450
push 0x54ac94
call fcn.00412820
mov edx, dword [esp + 0x4c]
lea eax, [esp + 0x44]
push 0
lea ecx, [esp + 0x11c]
push eax
push ecx
push edx
call fcn.004403d0
add esp, 0x48
push 0x54ac90
call fcn.00412820
lea eax, [esp + 0x10]
push eax
call fcn.00440230
push 0x54ac8c
call fcn.00412820
lea ecx, [esp + 0x18]
push ecx
call fcn.00440450
push 0x54ac88
call fcn.00412820
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0x20]
push 0
lea eax, [esp + 0x100]
push edx
push eax
push ecx
call fcn.004403d0
push 0x54ac84
call fcn.00412820
lea edx, [esp + 0x34]
push edx
call fcn.00440340
push 0x54ac80
call fcn.00412820
lea eax, [esp + 0x3c]
push eax
call fcn.00440450
push 0x54ac7c
call fcn.00412820
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.004511d0
push 0x54ac78
call fcn.00412820
add esp, 0x40
call fcn.00440d80
push 0x54ac74
call fcn.00412820
call fcn.004483b0
push 0x54ac70
call fcn.00412820
add esp, 8
test ebp, ebp
jne 0x440bc9
push 0x40
push edi
push 0xed9e00
call fcn.004654c0
add esp, 0xc
push 0x54ac6c
call fcn.00412820
add esp, 4
pop edi
pop esi
pop ebp
add esp, 0x104
ret