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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x60a121
mov eax, dword fs:[0]
push eax
sub esp, 0x108
mov eax, dword [0x69a450]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
jmp 0x5a7495
call fcn.005a7400
mov ecx, dword [ebp + 8]
cmp byte [ecx], 0
jne 0x5a74a6
xor edx, edx
jmp 0x5a74b9
mov edx, ecx
lea edi, [edx + 1]
jmp 0x5a74b0
mov al, byte [edx]
inc edx
test al, al
jne 0x5a74b0
sub edx, edi
push edx
lea edi, [esi + 4]
push ecx
mov ecx, edi
call fcn.0045a6b0
push edi
call fcn.00526840
add esp, 4
lea ecx, [ebp - 0x104]
call fcn.0054a1d0
cmp dword [edi + 0x14], 0x10
mov dword [ebp - 4], 0
jb 0x5a74ea
mov eax, dword [edi]
jmp 0x5a74ec
mov eax, edi
push eax
lea ecx, [ebp - 0x104]
call fcn.0054b070
test al, al
je 0x5a7fd5
lea ecx, [ebp - 0x104]
call fcn.0054b890
push 0xd
push str.spreadingflag
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0
mov byte [ebp - 0x40], 0
call fcn.0045a6b0
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac10
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x2c], 0x10
jb 0x5a7560
push dword [ebp - 0x40]
call fcn.004d6210
add esp, 4
test bl, bl
je 0x5a756a
mov byte [esi + 0x1c], 0
jmp 0x5a7577
cmp dword [ebp - 0x108], 0
setne al
mov byte [esi + 0x1c], al
push 0x14
push str.maintainparallelflag
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0
mov byte [ebp - 0x40], 0
call fcn.0045a6b0
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac10
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x2c], 0x10
jb 0x5a75cc
push dword [ebp - 0x40]
call fcn.004d6210
add esp, 4
test bl, bl
je 0x5a75d6
mov byte [esi + 0x1d], 0
jmp 0x5a75e3
cmp dword [ebp - 0x108], 0
setne al
mov byte [esi + 0x1d], al
push 0xf
push str.initialvelocity
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0
mov byte [ebp - 0x40], 0
call fcn.0045a6b0
lea eax, [esi + 0x20]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x2c], 0x10
jb 0x5a7635
push dword [ebp - 0x40]
call fcn.004d6210
add esp, 4
test bl, bl
jne 0x5a7fd5
push str.coneangle
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [esi + 0x24]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], bl
jb 0x5a7675
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.rollangle
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [esi + 0x28]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0
jb 0x5a76ae
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.angularvelocity
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [esi + 0x2c]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054adb0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0
jb 0x5a76e7
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.gravity
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [esi + 0x38]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0
jb 0x5a7720
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.hitonbackground
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac10
cmp dword [ebp - 0x14], 0x10
mov edi, eax
mov byte [ebp - 4], 0
jb 0x5a775e
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
test edi, edi
je 0x5a7771
cmp dword [ebp - 0x108], 0
setne al
mov byte [esi + 0x68], al
jmp 0x5a7775
mov byte [esi + 0x68], 0
push str.hitonanothermonster
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac10
cmp dword [ebp - 0x14], 0x10
mov edi, eax
mov byte [ebp - 4], 0
jb 0x5a77b3
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
test edi, edi
je 0x5a77c6
cmp dword [ebp - 0x108], 0
setne al
mov byte [esi + 0x69], al
jmp 0x5a77ca
mov byte [esi + 0x69], 0
push str.piercecount
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea edi, [esi + 0x6c]
mov byte [ebp - 4], 0xa
push edi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac10
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x5a7808
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
test bl, bl
je 0x5a7812
mov dword [edi], 0
push str.bombrange
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [esi + 0x3c]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0
jb 0x5a784b
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.bombeffect
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea edi, [esi + 0x40]
mov byte [ebp - 4], 0xc
push edi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac90
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x5a7889
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
test bl, bl
je 0x5a789d
push 0
push 0x63aafe
mov ecx, edi
call fcn.0045a6b0
jmp 0x5a7908
cmp dword [esi + 0x50], 0
je 0x5a7908
cmp dword [edi + 0x14], 0x10
jb 0x5a78ad
mov eax, dword [edi]
jmp 0x5a78af
mov eax, edi
push eax
call fcn.005264d0
add esp, 4
test al, al
jne 0x5a78ee
push edi
lea ecx, [ebp - 0x104]
call fcn.0054a9e0
push eax
call fcn.00526300
add esp, 4
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00466ea0
add esp, 0xc
mov ecx, edi
push eax
call fcn.004a9200
lea ecx, [ebp - 0x28]
call fcn.0045a800
cmp dword [edi + 0x14], 0x10
jb 0x5a78f6
mov edi, dword [edi]
mov ecx, dword [0x6f0858]
lea eax, [esi + 0x58]
push 0
push eax
push edi
call fcn.00515580
push str.homingflag
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac10
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x5a7949
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
test bl, bl
je 0x5a7953
mov byte [esi + 0x5c], 0
jmp 0x5a7960
cmp dword [ebp - 0x108], 0
setne al
mov byte [esi + 0x5c], al
push str.homingstarttime
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea edi, [esi + 0x64]
mov byte [ebp - 4], 0xe
push edi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x5a799e
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
xorps xmm0, xmm0
movq qword [ebp - 0x114], xmm0
test bl, bl
je 0x5a79b3
mov dword [edi], 0
push str.homingmaxangle
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea edi, [esi + 0x60]
mov byte [ebp - 4], 0xf
push edi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x5a79f1
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
test bl, bl
je 0x5a79fb
mov dword [edi], 0
push str.range
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [esi + 0x74]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x5a7a39
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
test bl, bl
jne 0x5a7fd5
push str.acceleration
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea edi, [esi + 0x78]
mov byte [ebp - 4], 0x11
push edi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054adb0
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x5a7a7f
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
test bl, bl
je 0x5a7a9f
movq xmm0, qword [ebp - 0x114]
unpcklps xmm0, xmm0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
movq qword [edi], xmm0
mov dword [edi + 8], eax
xor ebx, ebx
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x10c], ebx
call fcn.0054a980
test eax, eax
je 0x5a7fb1
lea eax, [ebp - 0x104]
mov dword [ebp - 0x110], eax
jmp 0x5a7ad0
push ebx
lea ecx, [ebp - 0x104]
call fcn.0054b740
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0
mov byte [ebp - 0x40], 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0x104]
call fcn.0054a9a0
cmp dword [ebp - 0x2c], 0x10
lea ecx, [ebp - 0x40]
mov edi, dword [ebp - 0x30]
mov eax, 0xa
cmovae ecx, dword [ebp - 0x40]
cmp edi, eax
cmovb eax, edi
push eax
push str.attachdata
push ecx
call fcn.00467c20
add esp, 0xc
test eax, eax
jne 0x5a7b40
cmp edi, 0xa
jae 0x5a7b36
or eax, 0xffffffff
jmp 0x5a7b3e
xor eax, eax
cmp edi, 0xa
setne al
test eax, eax
sete al
test al, al
je 0x5a7fba
mov dword [ebp - 0x68], 0xf
mov dword [ebp - 0x6c], 0
mov byte [ebp - 0x7c], 0
push 4
push str.type
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
call fcn.0045a6b0
lea eax, [ebp - 0x84]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac10
test eax, eax
mov byte [ebp - 4], 0x14
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x5a7bb6
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
test bl, bl
je 0x5a7c1a
cmp dword [ebp - 0x68], 0x10
jb 0x5a7bcb
push dword [ebp - 0x7c]
call fcn.004d6210
add esp, 4
cmp dword [ebp - 0x2c], 0x10
mov dword [ebp - 0x68], 0xf
mov dword [ebp - 0x6c], 0
mov byte [ebp - 0x7c], 0
jb 0x5a7bee
push dword [ebp - 0x40]
call fcn.004d6210
add esp, 4
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0
mov byte [ebp - 0x40], 0
mov byte [ebp - 4], 0
call fcn.0054b870
mov ebx, dword [ebp - 0x10c]
jmp 0x5a7f97
push str.flytype
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac10
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x5a7c53
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.attachfile
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac90
test eax, eax
mov byte [ebp - 4], 0x14
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x5a7c91
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
test bl, bl
je 0x5a7ca4
push 0x63aafe
lea ecx, [ebp - 0x7c]
call fcn.0045a670
jmp 0x5a7d13
cmp dword [ebp - 0x6c], 0
je 0x5a7d13
cmp dword [ebp - 0x68], 0x10
lea eax, [ebp - 0x7c]
cmovae eax, dword [ebp - 0x7c]
push eax
call fcn.005264d0
add esp, 4
test al, al
jne 0x5a7cf8
lea eax, [ebp - 0x7c]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054a9e0
push eax
call fcn.00526300
add esp, 4
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00466ea0
add esp, 0xc
lea ecx, [ebp - 0x7c]
push eax
call fcn.004a9200
lea ecx, [ebp - 0x28]
call fcn.0045a800
cmp dword [ebp - 0x68], 0x10
lea eax, [ebp - 0x7c]
mov ecx, dword [0x6f0858]
cmovae eax, dword [ebp - 0x7c]
push 0
push 0
push eax
call fcn.00515630
push str.tailflag
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac10
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x5a7d4f
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
cmp dword [ebp - 0x108], 0
je 0x5a7e54
push str.tailcolor
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x64], 1
call fcn.0045b870
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ab90
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x5a7d99
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.taillength
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x5a7dd2
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.tailsize
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x1b
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x5a7e0b
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.tailshaperect
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x1c
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054ac10
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x5a7e47
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
cmp dword [ebp - 0x108], 0
setne byte [ebp - 0x54]
jmp 0x5a7e58
mov byte [ebp - 0x64], 0
push str.roll
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x1d
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x5a7e91
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.distance
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x5a7eca
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.period
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x1f
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x5a7f03
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
push str.amplitude
lea ecx, [ebp - 0x28]
call fcn.0045b870
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x20
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.0054aba0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x5a7f3c
push dword [ebp - 0x28]
call fcn.004d6210
add esp, 4
lea eax, [ebp - 0x84]
push eax
lea ecx, [esi + 0x84]
call fcn.005a8300
cmp dword [ebp - 0x68], 0x10
jb 0x5a7f5f
push dword [ebp - 0x7c]
call fcn.004d6210
add esp, 4
mov ebx, dword [ebp - 0x10c]
cmp dword [ebp - 0x2c], 0x10
jb 0x5a7f76
push dword [ebp - 0x40]
call fcn.004d6210
add esp, 4
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0
mov byte [ebp - 0x40], 0
mov byte [ebp - 4], 0
call fcn.0054b870
inc ebx
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x10c], ebx
call fcn.0054a980
cmp ebx, eax
jb 0x5a7ad0
jmp 0x5a7fb6
mov bl, 1
jmp 0x5a7fd7
cmp dword [esi + 0x18], 0x10
lea eax, [esi + 4]
jb 0x5a7fc5
mov eax, dword [eax]
push eax
push str.CFlyingData::LoadScriptFile_Wrong_Data_:__s
call fcn.00525b10
add esp, 8
jmp 0x5a7f65
xor bl, bl
lea ecx, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
call fcn.0054a3c0
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005c46a4
mov esp, ebp
pop ebp
ret 4