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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6b9231
mov eax, dword fs:[0]
push eax
sub esp, 0x108
mov eax, dword [0x762dc0]
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 0x642c15
call fcn.00642b80
mov ecx, dword [ebp + 8]
cmp byte [ecx], 0
jne 0x642c26
xor edx, edx
jmp 0x642c39
mov edx, ecx
lea edi, [edx + 1]
jmp 0x642c30
mov al, byte [edx]
inc edx
test al, al
jne 0x642c30
sub edx, edi
push edx
lea edi, [esi + 4]
push ecx
mov ecx, edi
call fcn.004615c0
push edi
call fcn.005ab910
add esp, 4
lea ecx, [ebp - 0x104]
call fcn.005cb3b0
cmp dword [edi + 0x14], 0x10
mov dword [ebp - 4], 0
jb 0x642c6a
mov eax, dword [edi]
jmp 0x642c6c
mov eax, edi
push eax
lea ecx, [ebp - 0x104]
call fcn.005cc250
test al, al
je 0x643755
lea ecx, [ebp - 0x104]
call fcn.005ccc30
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.004615c0
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbdf0
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x2c], 0x10
jb 0x642ce0
push dword [ebp - 0x40]
call fcn.004623e0
add esp, 4
test bl, bl
je 0x642cea
mov byte [esi + 0x1c], 0
jmp 0x642cf7
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.004615c0
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbdf0
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x2c], 0x10
jb 0x642d4c
push dword [ebp - 0x40]
call fcn.004623e0
add esp, 4
test bl, bl
je 0x642d56
mov byte [esi + 0x1d], 0
jmp 0x642d63
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.004615c0
lea eax, [esi + 0x20]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x2c], 0x10
jb 0x642db5
push dword [ebp - 0x40]
call fcn.004623e0
add esp, 4
test bl, bl
jne 0x643755
push str.coneangle
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [esi + 0x24]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], bl
jb 0x642df5
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.rollangle
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [esi + 0x28]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0
jb 0x642e2e
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.angularvelocity
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [esi + 0x2c]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbf90
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0
jb 0x642e67
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.gravity
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [esi + 0x38]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0
jb 0x642ea0
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.hitonbackground
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbdf0
cmp dword [ebp - 0x14], 0x10
mov edi, eax
mov byte [ebp - 4], 0
jb 0x642ede
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
test edi, edi
je 0x642ef1
cmp dword [ebp - 0x108], 0
setne al
mov byte [esi + 0x68], al
jmp 0x642ef5
mov byte [esi + 0x68], 0
push str.hitonanothermonster
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbdf0
cmp dword [ebp - 0x14], 0x10
mov edi, eax
mov byte [ebp - 4], 0
jb 0x642f33
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
test edi, edi
je 0x642f46
cmp dword [ebp - 0x108], 0
setne al
mov byte [esi + 0x69], al
jmp 0x642f4a
mov byte [esi + 0x69], 0
push str.piercecount
lea ecx, [ebp - 0x28]
call fcn.00461700
lea edi, [esi + 0x6c]
mov byte [ebp - 4], 0xa
push edi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbdf0
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x642f88
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
test bl, bl
je 0x642f92
mov dword [edi], 0
push str.bombrange
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [esi + 0x3c]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0
jb 0x642fcb
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.bombeffect
lea ecx, [ebp - 0x28]
call fcn.00461700
lea edi, [esi + 0x40]
mov byte [ebp - 4], 0xc
push edi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbe70
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x643009
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
test bl, bl
je 0x64301d
push 0
push 0x70cd28
mov ecx, edi
call fcn.004615c0
jmp 0x643088
cmp dword [esi + 0x50], 0
je 0x643088
cmp dword [edi + 0x14], 0x10
jb 0x64302d
mov eax, dword [edi]
jmp 0x64302f
mov eax, edi
push eax
call fcn.005ab5a0
add esp, 4
test al, al
jne 0x64306e
push edi
lea ecx, [ebp - 0x104]
call fcn.005cbbc0
push eax
call fcn.005ab3d0
add esp, 4
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004611c0
add esp, 0xc
mov ecx, edi
push eax
call fcn.00460e40
lea ecx, [ebp - 0x28]
call fcn.00462020
cmp dword [edi + 0x14], 0x10
jb 0x643076
mov edi, dword [edi]
mov ecx, dword [0x799d14]
lea eax, [esi + 0x58]
push 0
push eax
push edi
call fcn.0059a590
push str.homingflag
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbdf0
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x6430c9
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
test bl, bl
je 0x6430d3
mov byte [esi + 0x5c], 0
jmp 0x6430e0
cmp dword [ebp - 0x108], 0
setne al
mov byte [esi + 0x5c], al
push str.homingstarttime
lea ecx, [ebp - 0x28]
call fcn.00461700
lea edi, [esi + 0x64]
mov byte [ebp - 4], 0xe
push edi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x64311e
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
xorps xmm0, xmm0
movq qword [ebp - 0x114], xmm0
test bl, bl
je 0x643133
mov dword [edi], 0
push str.homingmaxangle
lea ecx, [ebp - 0x28]
call fcn.00461700
lea edi, [esi + 0x60]
mov byte [ebp - 4], 0xf
push edi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x643171
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
test bl, bl
je 0x64317b
mov dword [edi], 0
push str.range
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [esi + 0x74]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x6431b9
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
test bl, bl
jne 0x643755
push str.acceleration
lea ecx, [ebp - 0x28]
call fcn.00461700
lea edi, [esi + 0x78]
mov byte [ebp - 4], 0x11
push edi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbf90
test eax, eax
mov byte [ebp - 4], 0
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x6431ff
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
test bl, bl
je 0x64321f
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.005cbb60
test eax, eax
je 0x643731
lea eax, [ebp - 0x104]
mov dword [ebp - 0x110], eax
jmp 0x643250
push ebx
lea ecx, [ebp - 0x104]
call fcn.005ccae0
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.005cbb80
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.00462f50
add esp, 0xc
test eax, eax
jne 0x6432c0
cmp edi, 0xa
jae 0x6432b6
or eax, 0xffffffff
jmp 0x6432be
xor eax, eax
cmp edi, 0xa
setne al
test eax, eax
sete al
test al, al
je 0x64373a
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.004615c0
lea eax, [ebp - 0x84]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbdf0
test eax, eax
mov byte [ebp - 4], 0x14
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x643336
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
test bl, bl
je 0x64339a
cmp dword [ebp - 0x68], 0x10
jb 0x64334b
push dword [ebp - 0x7c]
call fcn.004623e0
add esp, 4
cmp dword [ebp - 0x2c], 0x10
mov dword [ebp - 0x68], 0xf
mov dword [ebp - 0x6c], 0
mov byte [ebp - 0x7c], 0
jb 0x64336e
push dword [ebp - 0x40]
call fcn.004623e0
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.005ccc10
mov ebx, dword [ebp - 0x10c]
jmp 0x643717
push str.flytype
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbdf0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x6433d3
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.attachfile
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbe70
test eax, eax
mov byte [ebp - 4], 0x14
sete bl
cmp dword [ebp - 0x14], 0x10
jb 0x643411
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
test bl, bl
je 0x643424
push 0x70cd28
lea ecx, [ebp - 0x7c]
call fcn.004a4420
jmp 0x643493
cmp dword [ebp - 0x6c], 0
je 0x643493
cmp dword [ebp - 0x68], 0x10
lea eax, [ebp - 0x7c]
cmovae eax, dword [ebp - 0x7c]
push eax
call fcn.005ab5a0
add esp, 4
test al, al
jne 0x643478
lea eax, [ebp - 0x7c]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbbc0
push eax
call fcn.005ab3d0
add esp, 4
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004611c0
add esp, 0xc
lea ecx, [ebp - 0x7c]
push eax
call fcn.00460e40
lea ecx, [ebp - 0x28]
call fcn.00462020
cmp dword [ebp - 0x68], 0x10
lea eax, [ebp - 0x7c]
mov ecx, dword [0x799d14]
cmovae eax, dword [ebp - 0x7c]
push 0
push 0
push eax
call fcn.0059a640
push str.tailflag
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbdf0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x6434cf
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
cmp dword [ebp - 0x108], 0
je 0x6435d4
push str.tailcolor
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x64], 1
call fcn.00461700
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd70
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x643519
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.taillength
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x643552
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.tailsize
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x1b
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x64358b
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.tailshaperect
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x1c
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbdf0
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x6435c7
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
cmp dword [ebp - 0x108], 0
setne byte [ebp - 0x54]
jmp 0x6435d8
mov byte [ebp - 0x64], 0
push str.roll
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x1d
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x643611
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.distance
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x64364a
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.period
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x1f
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x643683
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
push str.amplitude
lea ecx, [ebp - 0x28]
call fcn.00461700
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x20
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x104]
call fcn.005cbd80
cmp dword [ebp - 0x14], 0x10
mov byte [ebp - 4], 0x14
jb 0x6436bc
push dword [ebp - 0x28]
call fcn.004623e0
add esp, 4
lea eax, [ebp - 0x84]
push eax
lea ecx, [esi + 0x84]
call fcn.00643a80
cmp dword [ebp - 0x68], 0x10
jb 0x6436df
push dword [ebp - 0x7c]
call fcn.004623e0
add esp, 4
mov ebx, dword [ebp - 0x10c]
cmp dword [ebp - 0x2c], 0x10
jb 0x6436f6
push dword [ebp - 0x40]
call fcn.004623e0
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.005ccc10
inc ebx
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x10c], ebx
call fcn.005cbb60
cmp ebx, eax
jb 0x643250
jmp 0x643736
mov bl, 1
jmp 0x643757
cmp dword [esi + 0x18], 0x10
lea eax, [esi + 4]
jb 0x643745
mov eax, dword [eax]
push eax
push str.CFlyingData::LoadScriptFile_Wrong_Data_:__s
call fcn.005aaeb0
add esp, 8
jmp 0x6436e5
xor bl, bl
lea ecx, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
call fcn.005cb5a0
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.0065b5b4
mov esp, ebp
pop ebp
ret 4