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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xc4
push ebx
mov ebx, eax
mov eax, dword [0x7b37b4]
push esi
mov esi, ecx
mov ecx, dword [eax]
push edi
mov edi, dword [esi + 4]
mov dl, byte [edi + ecx]
add edi, ecx
movsx eax, dl
sub eax, 0x4f
mov ecx, str.Old_Event
jne 0x6244ca
mov byte [esp + 0xf], dl
mov edx, edi
sub edx, ecx
mov dword [esp + 0x2c], edx
jmp 0x6244a0
mov dl, byte [esp + 0xf]
test dl, dl
je 0x6244c2
mov edx, dword [esp + 0x2c]
mov al, byte [ecx + edx + 1]
movsx edx, byte [ecx + 1]
inc ecx
mov byte [esp + 0xf], al
movsx eax, al
sub eax, edx
je 0x6244a0
jmp 0x6244ca
test eax, eax
je 0x624d2b
push str.Audio
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x6246c5
push eax
push esi
mov dword [esp + 0x38], 0x7371cc
mov dword [esp + 0x3c], eax
mov dword [esp + 0xa0], eax
mov edi, 0x40
call fcn.00463ba0
lea edx, [esp + 0x38]
mov cl, byte [eax]
mov byte [edx], cl
inc edx
inc eax
test cl, cl
je 0x624512
dec edi
jne 0x624503
jmp 0x62452d
test edi, edi
je 0x62452d
dec edi
je 0x62452d
mov ecx, edi
mov edi, edx
mov edx, ecx
shr ecx, 2
xor eax, eax
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
push 1
push esi
xor edi, edi
call fcn.00463ba0
mov ecx, eax
mov dword [esp + 0x2c], ecx
lea ecx, [ecx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x624540
sub eax, ecx
dec eax
je 0x6245cf
push str.Center_of_Object
push ecx
call fcn.00625d90
add esp, 8
test eax, eax
je 0x6245cf
mov eax, dword [esp + 0x2c]
push str.Center_of_Event
push eax
call fcn.00625d90
add esp, 8
test eax, eax
jne 0x6245a2
mov edx, dword [ebx]
push esi
lea eax, [esp + 0x14]
push eax
mov ecx, ebx
call dword [edx + 0x10]
mov ebx, dword [eax]
mov edx, dword [eax + 4]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x98], 1
mov edi, 1
jmp 0x624608
mov ecx, dword [esp + 0x2c]
push str.Globally
push ecx
call fcn.00625d90
add esp, 8
test eax, eax
mov eax, dword [esp + 0x1c]
jne 0x6245fc
xorps xmm0, xmm0
movss dword [esp + 0x14], xmm0
movss dword [esp + 0x10], xmm0
xor edi, edi
jmp 0x6245f6
mov eax, dword [ebp + 0xc]
movss xmm0, dword [eax + 0x40]
movss dword [esp + 0x10], xmm0
movss xmm0, dword [eax + 0x44]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [eax + 0x48]
mov eax, dword [esp + 0x1c]
mov edi, 1
movss dword [esp + 0x18], xmm0
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
push 2
push esi
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], edx
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], eax
call fcn.00463ba0
mov ebx, eax
mov edi, edi
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x624630
sub eax, ebx
dec eax
je 0x62468c
push str.One_Shot
push ebx
call fcn.00625d90
add esp, 8
test eax, eax
je 0x62468c
push str.Looped
push ebx
call fcn.00625d90
add esp, 8
test eax, eax
jne 0x62466d
mov dword [esp + 0x90], 1
jmp 0x624697
push str.Contact
push ebx
call fcn.00625d90
add esp, 8
test eax, eax
jne 0x624697
mov dword [esp + 0x90], 3
jmp 0x624697
mov dword [esp + 0x90], 0
mov ecx, dword [0x7b37b0]
mov edx, dword [ecx]
mov eax, dword [esi]
mov eax, dword [eax + edx + 0xc]
mov ecx, dword [ebp + 0xc]
push ecx
lea edx, [esp + 0x34]
mov dword [esp + 0x98], eax
push edx
mov eax, edi
call fcn.00624d40
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Particle
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x6247af
push 0x40
push eax
push esi
mov dword [esp + 0x3c], 0x7371b0
mov dword [esp + 0x40], 1
call fcn.00463ba0
push eax
lea eax, [esp + 0x40]
push eax
call fcn.00625cb0
add esp, 0xc
push 0
mov edi, esi
call fcn.00463b10
push 1
mov dword [esp + 0xac], eax
call fcn.00463b10
mov edx, dword [ebx]
mov dword [esp + 0xac], eax
push esi
lea eax, [esp + 0x14]
push eax
mov ecx, ebx
call dword [edx + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x80], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x84], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x88], ecx
mov edx, dword [eax + 0xc]
mov eax, dword [ebx]
push esi
lea ecx, [esp + 0x14]
push ecx
mov ecx, ebx
mov dword [esp + 0x94], edx
call dword [eax + 0x18]
movss xmm0, dword [eax]
mov edx, dword [ebp + 0x10]
movss dword [esp + 0x90], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x94], xmm0
movss xmm0, dword [eax + 8]
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [esp + 0x34]
mov dword [esp + 0xa8], edx
mov edx, dword [ebp + 8]
push ecx
push edx
movss dword [esp + 0xa4], xmm0
call fcn.00624f80
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Hot_Point
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x6247f7
push eax
push esi
call fcn.00463ba0
mov eax, dword [ebx]
push esi
lea ecx, [esp + 0x14]
push ecx
mov ecx, ebx
call dword [eax + 0x10]
mov edx, dword [ebx]
push esi
lea eax, [esp + 0x14]
push eax
mov ecx, ebx
call dword [edx + 0x18]
lea esi, [esp + 0xc0]
call fcn.0043eb50
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Generic
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x624850
push 0x40
push eax
push esi
mov dword [esp + 0x3c], 0x7371c8
mov dword [esp + 0x40], 4
call fcn.00463ba0
push eax
lea ecx, [esp + 0x40]
push ecx
call fcn.00625cb0
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx]
mov dword [esp + 0x84], edx
add esp, 0xc
lea edx, [esp + 0x30]
push edx
call dword [eax + 0x40]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Intensity
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x62490e
push 1
mov edx, esi
mov dword [esp + 0x34], 0x7371c0
mov dword [esp + 0x38], 5
call fcn.004639f0
movaps xmm1, xmm0
movss xmm0, dword [0x7389bc]
comiss xmm0, xmm1
jbe 0x624898
push 1
mov edx, esi
call fcn.004639f0
push 2
mov edx, esi
movss dword [esp + 0x3c], xmm0
call fcn.004639f0
push 3
mov edx, esi
movss dword [esp + 0x40], xmm0
call fcn.004639f0
push 4
mov edx, esi
movss dword [esp + 0x44], xmm0
call fcn.004639f0
push 5
mov edx, esi
movss dword [esp + 0x48], xmm0
call fcn.004639f0
push 7
mov edx, esi
movss dword [esp + 0x4c], xmm0
call fcn.004639f0
push 8
mov edx, esi
movss dword [esp + 0x50], xmm0
call fcn.004639f0
lea eax, [esp + 0x30]
push eax
mov eax, dword [ebp + 0xc]
movss dword [esp + 0x54], xmm0
call fcn.006251d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.World_Collision
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x624932
mov dword [esp + 0x10], 0x7371b8
mov dword [esp + 0x14], 6
jmp 0x624954
push str.Gravity
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x624977
mov dword [esp + 0x10], 0x7371ac
mov dword [esp + 0x14], 7
push 0
mov edi, esi
call fcn.00463b10
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
mov dword [esp + 0x18], eax
lea eax, [esp + 0x10]
push eax
call dword [edx + 0x40]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Weapon
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x6249ec
mov edx, dword [ebx]
push esi
lea eax, [esp + 0xc4]
push eax
mov ecx, ebx
mov dword [esp + 0x38], 0x7371a4
call dword [edx + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x40], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x44], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x48], ecx
mov edx, dword [eax + 0xc]
mov ecx, dword [0x7b37b0]
mov eax, dword [esi]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x34], 8
mov edx, dword [ecx]
mov eax, dword [eax + edx + 0xc]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
mov dword [esp + 0x50], eax
lea eax, [esp + 0x30]
push eax
call dword [edx + 0x40]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Pain
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x624a9f
mov edx, dword [ebx]
push esi
lea eax, [esp + 0xc4]
push eax
mov ecx, ebx
mov dword [esp + 0x38], 0x73719c
call dword [edx + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x40], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x44], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x48], ecx
mov edx, dword [eax + 0xc]
push 1
lea eax, [esp + 0xc4]
mov edi, esi
mov dword [esp + 0x50], edx
call fcn.00463a40
mov ecx, dword [eax]
mov dword [esp + 0x50], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x54], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x58], ecx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x5c], edx
push 0
mov edx, esi
call fcn.004639f0
mov ecx, dword [0x7b37b0]
mov eax, dword [esi]
movss dword [esp + 0x60], xmm0
mov dword [esp + 0x34], 9
mov edx, dword [ecx]
mov eax, dword [eax + edx + 0xc]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
mov dword [esp + 0x64], eax
lea eax, [esp + 0x30]
push eax
call dword [edx + 0x40]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Debris
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x624bba
mov edx, dword [ebx]
push esi
lea eax, [esp + 0xc4]
push eax
mov ecx, ebx
mov dword [esp + 0x38], 0x7371c4
call dword [edx + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x80], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x84], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x88], ecx
mov edx, dword [eax + 0xc]
mov eax, dword [ebx]
push esi
lea ecx, [esp + 0x14]
push ecx
mov ecx, ebx
mov dword [esp + 0x94], edx
call dword [eax + 0x18]
movss xmm0, dword [eax]
movss dword [esp + 0x90], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x94], xmm0
movss xmm0, dword [eax + 8]
push 1
mov edx, esi
movss dword [esp + 0x9c], xmm0
call fcn.004639f0
push 2
mov edx, esi
movss dword [esp + 0xa0], xmm0
call fcn.004639f0
push 3
mov edx, esi
movss dword [esp + 0xa4], xmm0
call fcn.004639f0
push 0
mov edi, esi
movss dword [esp + 0xa8], xmm0
call fcn.00463b10
push 0
push esi
mov dword [esp + 0xb0], eax
call fcn.00463ba0
push eax
lea edx, [esp + 0x30]
push str._s.rigidgeom
push edx
call fcn.00626a10
mov eax, dword [eax]
push 0x40
push eax
lea ecx, [esp + 0x4c]
push ecx
call fcn.00625cb0
mov eax, dword [esp + 0x44]
add esp, 0x18
call fcn.00626990
mov edx, dword [ebp + 0xc]
push edx
lea eax, [esp + 0x34]
push eax
call fcn.006252a0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Set_Mesh
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x624c20
push 0x40
push eax
push esi
mov dword [esp + 0x3c], 0x7371bc
call fcn.00463ba0
push eax
lea ecx, [esp + 0x40]
push ecx
call fcn.00625cb0
add esp, 0xc
push 0x737210
push 1
push esi
call fcn.00463ba0
push eax
call fcn.00625d60
add esp, 8
neg eax
sbb eax, eax
inc eax
lea edx, [esp + 0x30]
mov dword [esp + 0x78], eax
mov eax, dword [ebp + 0xc]
push edx
call fcn.00625600
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Swap_Mesh
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x624c82
push 0x40
push eax
push esi
mov dword [esp + 0x3c], 0x7371b4
call fcn.00463ba0
push eax
lea eax, [esp + 0x40]
push eax
call fcn.00625cb0
add esp, 0xc
push 0x40
push 1
push esi
call fcn.00463ba0
push eax
lea ecx, [esp + 0x80]
push ecx
call fcn.00625cb0
mov eax, dword [ebp + 0xc]
add esp, 0xc
lea edx, [esp + 0x30]
push edx
call fcn.00625670
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Swap_Virtual_Texture
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x624ce4
push 0x40
push eax
push esi
mov dword [esp + 0x3c], 0x7371a0
call fcn.00463ba0
push eax
lea eax, [esp + 0x40]
push eax
call fcn.00625cb0
add esp, 0xc
push 0x40
push 1
push esi
call fcn.00463ba0
push eax
lea ecx, [esp + 0x80]
push ecx
call fcn.00625cb0
mov esi, dword [ebp + 0xc]
add esp, 0xc
lea edx, [esp + 0x30]
push edx
call fcn.006256e0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Fade_Geometry
push edi
call fcn.00625d60
add esp, 8
test eax, eax
jne 0x624d2b
mov ecx, dword [0x7b37b0]
mov edx, dword [ecx]
mov eax, dword [esi]
mov eax, dword [eax + edx + 0xc]
push 1
mov edx, esi
mov dword [esp + 0x14], 0x7371a8
mov dword [esp + 0x1c], eax
call fcn.004639f0
mov ecx, dword [ebp + 0xc]
lea esi, [esp + 0x10]
movss dword [esp + 0x1c], xmm0
call fcn.00625720
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc