79d78c:	89 44 24 1c          	mov    %eax,0x1c(%esp)
79d790:	8d 3c 51             	lea    (%ecx,%edx,2),%edi
79d793:	3b f9                	cmp    %ecx,%edi
79d795:	1b ed                	sbb    %ebp,%ebp
79d797:	c1 ea 1f             	shr    $0x1f,%edx
79d79a:	03 c0                	add    %eax,%eax
79d79c:	f7 dd                	neg    %ebp
79d79e:	0b d0                	or     %eax,%edx
79d7a0:	03 d6                	add    %esi,%edx
79d7a2:	3b d6                	cmp    %esi,%edx
79d7a4:	1b db                	sbb    %ebx,%ebx
79d7a6:	f7 db                	neg    %ebx
79d7a8:	8b 4c 24 44          	mov    0x44(%esp),%ecx
79d7ac:	03 d5                	add    %ebp,%edx
79d7ae:	89 54 24 10          	mov    %edx,0x10(%esp)
79d7b2:	89 5c 24 14          	mov    %ebx,0x14(%esp)
79d7b6:	8b 5c 24 40          	mov    0x40(%esp),%ebx
79d7ba:	8b 41 04             	mov    0x4(%ecx),%eax
79d7bd:	f7 61 08             	mull   0x8(%ecx)
79d7c0:	8d 34 47             	lea    (%edi,%eax,2),%esi
79d7c3:	3b f7                	cmp    %edi,%esi
79d7c5:	89 73 0c             	mov    %esi,0xc(%ebx)
79d7c8:	8b f8                	mov    %eax,%edi
79d7ca:	8d 04 12             	lea    (%edx,%edx,1),%eax
79d7cd:	1b c9                	sbb    %ecx,%ecx
79d7cf:	c1 ef 1f             	shr    $0x1f,%edi
79d7d2:	0b f8                	or     %eax,%edi
79d7d4:	f7 d9                	neg    %ecx
79d7d6:	03 7c 24 10          	add    0x10(%esp),%edi
79d7da:	3b 7c 24 10          	cmp    0x10(%esp),%edi
79d7de:	1b c0                	sbb    %eax,%eax
79d7e0:	03 f9                	add    %ecx,%edi
79d7e2:	f7 d8                	neg    %eax
79d7e4:	3b f9                	cmp    %ecx,%edi
79d7e6:	1b f6                	sbb    %esi,%esi
79d7e8:	f7 de                	neg    %esi
79d7ea:	0b f0                	or     %eax,%esi
79d7ec:	39 6c 24 10          	cmp    %ebp,0x10(%esp)
79d7f0:	8b 6c 24 44          	mov    0x44(%esp),%ebp
79d7f4:	1b c0                	sbb    %eax,%eax
79d7f6:	c1 ea 1f             	shr    $0x1f,%edx
79d7f9:	f7 d8                	neg    %eax
79d7fb:	0b 44 24 14          	or     0x14(%esp),%eax
79d7ff:	03 f0                	add    %eax,%esi
79d801:	8b 44 24 1c          	mov    0x1c(%esp),%eax
79d805:	c1 e8 1f             	shr    $0x1f,%eax
79d808:	03 f2                	add    %edx,%esi
79d80a:	03 f0                	add    %eax,%esi
79d80c:	8b 45 00             	mov    0x0(%ebp),%eax
79d80f:	f7 65 10             	mull   0x10(%ebp)
79d812:	8b d8                	mov    %eax,%ebx
79d814:	8b c2                	mov    %edx,%eax
79d816:	89 44 24 20          	mov    %eax,0x20(%esp)
79d81a:	8d 0c 5f             	lea    (%edi,%ebx,2),%ecx
79d81d:	3b cf                	cmp    %edi,%ecx
79d81f:	1b d2                	sbb    %edx,%edx
79d821:	03 c0                	add    %eax,%eax
79d823:	c1 eb 1f             	shr    $0x1f,%ebx
79d826:	f7 da                	neg    %edx
79d828:	0b d8                	or     %eax,%ebx
79d82a:	89 54 24 1c          	mov    %edx,0x1c(%esp)
79d82e:	03 de                	add    %esi,%ebx
79d830:	3b de                	cmp    %esi,%ebx
79d832:	1b c0                	sbb    %eax,%eax
79d834:	03 da                	add    %edx,%ebx
79d836:	f7 d8                	neg    %eax
79d838:	89 5c 24 10          	mov    %ebx,0x10(%esp)
79d83c:	89 44 24 18          	mov    %eax,0x18(%esp)
79d840:	8b 45 04             	mov    0x4(%ebp),%eax
79d843:	f7 65 0c             	mull   0xc(%ebp)
79d846:	8b e8                	mov    %eax,%ebp
79d848:	89 54 24 14          	mov    %edx,0x14(%esp)
79d84c:	8d 04 12             	lea    (%edx,%edx,1),%eax
79d84f:	8d 34 69             	lea    (%ecx,%ebp,2),%esi
79d852:	3b f1                	cmp    %ecx,%esi
79d854:	8b 4c 24 44          	mov    0x44(%esp),%ecx
79d858:	1b db                	sbb    %ebx,%ebx
79d85a:	c1 ed 1f             	shr    $0x1f,%ebp
79d85d:	0b e8                	or     %eax,%ebp
79d85f:	f7 db                	neg    %ebx
79d861:	03 6c 24 10          	add    0x10(%esp),%ebp
79d865:	3b 6c 24 10          	cmp    0x10(%esp),%ebp
79d869:	8b 49 08             	mov    0x8(%ecx),%ecx
79d86c:	8b c1                	mov    %ecx,%eax
79d86e:	1b ff                	sbb    %edi,%edi
79d870:	03 eb                	add    %ebx,%ebp
79d872:	f7 e1                	mul    %ecx
79d874:	8b 4c 24 40          	mov    0x40(%esp),%ecx
79d878:	f7 df                	neg    %edi
79d87a:	03 c6                	add    %esi,%eax
79d87c:	83 d2 00             	adc    $0x0,%edx
79d87f:	89 41 10             	mov    %eax,0x10(%ecx)
79d882:	8d 34 2a             	lea    (%edx,%ebp,1),%esi
79d885:	8b 44 24 10          	mov    0x10(%esp),%eax
79d889:	3b eb                	cmp    %ebx,%ebp
79d88b:	1b db                	sbb    %ebx,%ebx
79d88d:	f7 db                	neg    %ebx
79d88f:	0b df                	or     %edi,%ebx
79d891:	3b 44 24 1c          	cmp    0x1c(%esp),%eax
79d895:	8b 7c 24 44          	mov    0x44(%esp),%edi
79d899:	1b c0                	sbb    %eax,%eax
79d89b:	f7 d8                	neg    %eax
79d89d:	0b 44 24 18          	or     0x18(%esp),%eax
79d8a1:	03 d8                	add    %eax,%ebx
79d8a3:	3b f2                	cmp    %edx,%esi
79d8a5:	1b c0                	sbb    %eax,%eax
79d8a7:	f7 d8                	neg    %eax
79d8a9:	03 d8                	add    %eax,%ebx
79d8ab:	8b 44 24 14          	mov    0x14(%esp),%eax
79d8af:	c1 e8 1f             	shr    $0x1f,%eax
79d8b2:	03 d8                	add    %eax,%ebx
79d8b4:	8b 44 24 20          	mov    0x20(%esp),%eax
79d8b8:	c1 e8 1f             	shr    $0x1f,%eax
79d8bb:	03 d8                	add    %eax,%ebx
79d8bd:	8b 07                	mov    (%edi),%eax
79d8bf:	f7 67 14             	mull   0x14(%edi)
79d8c2:	8b e8                	mov    %eax,%ebp
79d8c4:	8b c2                	mov    %edx,%eax
79d8c6:	89 44 24 28          	mov    %eax,0x28(%esp)
79d8ca:	8d 0c 6e             	lea    (%esi,%ebp,2),%ecx
79d8cd:	3b ce                	cmp    %esi,%ecx
79d8cf:	1b d2                	sbb    %edx,%edx
79d8d1:	03 c0                	add    %eax,%eax
79d8d3:	c1 ed 1f             	shr    $0x1f,%ebp
79d8d6:	f7 da                	neg    %edx
79d8d8:	0b e8                	or     %eax,%ebp
79d8da:	89 54 24 20          	mov    %edx,0x20(%esp)
79d8de:	03 eb                	add    %ebx,%ebp
79d8e0:	3b eb                	cmp    %ebx,%ebp
79d8e2:	1b c0                	sbb    %eax,%eax
79d8e4:	03 ea                	add    %edx,%ebp
79d8e6:	f7 d8                	neg    %eax
79d8e8:	89 6c 24 18          	mov    %ebp,0x18(%esp)
79d8ec:	89 44 24 1c          	mov    %eax,0x1c(%esp)
79d8f0:	8b 47 04             	mov    0x4(%edi),%eax
79d8f3:	f7 67 10             	mull   0x10(%edi)
79d8f6:	8b f0                	mov    %eax,%esi
79d8f8:	89 54 24 24          	mov    %edx,0x24(%esp)
79d8fc:	8d 04 12             	lea    (%edx,%edx,1),%eax
79d8ff:	8d 3c 71             	lea    (%ecx,%esi,2),%edi
79d902:	3b f9                	cmp    %ecx,%edi
79d904:	8b 4c 24 44          	mov    0x44(%esp),%ecx
79d908:	1b ed                	sbb    %ebp,%ebp
79d90a:	c1 ee 1f             	shr    $0x1f,%esi
79d90d:	0b f0                	or     %eax,%esi
79d90f:	f7 dd                	neg    %ebp
79d911:	03 74 24 18          	add    0x18(%esp),%esi
79d915:	3b 74 24 18          	cmp    0x18(%esp),%esi
79d919:	8b 41 08             	mov    0x8(%ecx),%eax
79d91c:	1b db                	sbb    %ebx,%ebx
79d91e:	03 f5                	add    %ebp,%esi
79d920:	f7 61 0c             	mull   0xc(%ecx)
79d923:	89 74 24 14          	mov    %esi,0x14(%esp)
79d927:	f7 db                	neg    %ebx
79d929:	8d 34 47             	lea    (%edi,%eax,2),%esi
79d92c:	3b f7                	cmp    %edi,%esi
79d92e:	8b 7c 24 40          	mov    0x40(%esp),%edi
79d932:	1b c9                	sbb    %ecx,%ecx
79d934:	c1 e8 1f             	shr    $0x1f,%eax
79d937:	89 44 24 10          	mov    %eax,0x10(%esp)
79d93b:	f7 d9                	neg    %ecx
79d93d:	8d 04 12             	lea    (%edx,%edx,1),%eax
79d940:	89 77 14             	mov    %esi,0x14(%edi)
79d943:	09 44 24 10          	or     %eax,0x10(%esp)
79d947:	8b 44 24 10          	mov    0x10(%esp),%eax
79d94b:	03 44 24 14          	add    0x14(%esp),%eax
79d94f:	3b 44 24 14          	cmp    0x14(%esp),%eax
79d953:	89 44 24 10          	mov    %eax,0x10(%esp)
79d957:	1b c0                	sbb    %eax,%eax
79d959:	01 4c 24 10          	add    %ecx,0x10(%esp)
79d95d:	f7 d8                	neg    %eax
79d95f:	39 4c 24 10          	cmp    %ecx,0x10(%esp)
79d963:	1b f6                	sbb    %esi,%esi
79d965:	f7 de                	neg    %esi
79d967:	0b f0                	or     %eax,%esi
79d969:	39 6c 24 14          	cmp    %ebp,0x14(%esp)
79d96d:	1b c0                	sbb    %eax,%eax
79d96f:	f7 d8                	neg    %eax
79d971:	0b c3                	or     %ebx,%eax
79d973:	8b 5c 24 44          	mov    0x44(%esp),%ebx
79d977:	03 f0                	add    %eax,%esi
79d979:	8b 44 24 18          	mov    0x18(%esp),%eax
79d97d:	3b 44 24 20          	cmp    0x20(%esp),%eax
79d981:	1b c0                	sbb    %eax,%eax
79d983:	c1 ea 1f             	shr    $0x1f,%edx
79d986:	f7 d8                	neg    %eax
79d988:	0b 44 24 1c          	or     0x1c(%esp),%eax
79d98c:	03 f0                	add    %eax,%esi
79d98e:	8b 44 24 24          	mov    0x24(%esp),%eax
79d992:	c1 e8 1f             	shr    $0x1f,%eax
79d995:	03 f2                	add    %edx,%esi
79d997:	03 f0                	add    %eax,%esi
79d999:	8b 44 24 28          	mov    0x28(%esp),%eax
79d99d:	c1 e8 1f             	shr    $0x1f,%eax
79d9a0:	03 f0                	add    %eax,%esi
79d9a2:	8b 03                	mov    (%ebx),%eax
79d9a4:	f7 63 18             	mull   0x18(%ebx)
79d9a7:	8b e8                	mov    %eax,%ebp
79d9a9:	8b fa                	mov    %edx,%edi
79d9ab:	8b 44 24 10          	mov    0x10(%esp),%eax
79d9af:	89 7c 24 30          	mov    %edi,0x30(%esp)
79d9b3:	8d 0c 68             	lea    (%eax,%ebp,2),%ecx
79d9b6:	3b c8                	cmp    %eax,%ecx
79d9b8:	8d 04 3f             	lea    (%edi,%edi,1),%eax
79d9bb:	1b d2                	sbb    %edx,%edx
79d9bd:	c1 ed 1f             	shr    $0x1f,%ebp
79d9c0:	0b e8                	or     %eax,%ebp
79d9c2:	f7 da                	neg    %edx
79d9c4:	03 ee                	add    %esi,%ebp
79d9c6:	89 54 24 1c          	mov    %edx,0x1c(%esp)
79d9ca:	3b ee                	cmp    %esi,%ebp
79d9cc:	1b c0                	sbb    %eax,%eax
79d9ce:	03 ea                	add    %edx,%ebp
79d9d0:	f7 d8                	neg    %eax
79d9d2:	89 6c 24 20          	mov    %ebp,0x20(%esp)
79d9d6:	89 44 24 14          	mov    %eax,0x14(%esp)
79d9da:	8b 43 04             	mov    0x4(%ebx),%eax
79d9dd:	f7 63 14             	mull   0x14(%ebx)
79d9e0:	8b d8                	mov    %eax,%ebx
79d9e2:	89 54 24 2c          	mov    %edx,0x2c(%esp)
79d9e6:	8d 04 12             	lea    (%edx,%edx,1),%eax
79d9e9:	8d 3c 59             	lea    (%ecx,%ebx,2),%edi
79d9ec:	3b f9                	cmp    %ecx,%edi
79d9ee:	1b c9                	sbb    %ecx,%ecx
79d9f0:	c1 eb 1f             	shr    $0x1f,%ebx
79d9f3:	0b d8                	or     %eax,%ebx
79d9f5:	f7 d9                	neg    %ecx
79d9f7:	03 dd                	add    %ebp,%ebx
79d9f9:	89 4c 24 28          	mov    %ecx,0x28(%esp)
79d9fd:	3b dd                	cmp    %ebp,%ebx
79d9ff:	1b c0                	sbb    %eax,%eax
79da01:	03 d9                	add    %ecx,%ebx
79da03:	8b 4c 24 44          	mov    0x44(%esp),%ecx
79da07:	f7 d8                	neg    %eax
79da09:	89 44 24 24          	mov    %eax,0x24(%esp)
79da0d:	89 5c 24 18          	mov    %ebx,0x18(%esp)
79da11:	8b 41 08             	mov    0x8(%ecx),%eax
79da14:	f7 61 10             	mull   0x10(%ecx)
79da17:	8b 49 0c             	mov    0xc(%ecx),%ecx
79da1a:	8b e8                	mov    %eax,%ebp
79da1c:	89 54 24 10          	mov    %edx,0x10(%esp)
79da20:	8d 04 12             	lea    (%edx,%edx,1),%eax
79da23:	8d 34 6f             	lea    (%edi,%ebp,2),%esi
79da26:	3b f7                	cmp    %edi,%esi
79da28:	1b db                	sbb    %ebx,%ebx
79da2a:	c1 ed 1f             	shr    $0x1f,%ebp
79da2d:	0b e8                	or     %eax,%ebp
79da2f:	f7 db                	neg    %ebx
79da31:	03 6c 24 18          	add    0x18(%esp),%ebp
79da35:	8b c1                	mov    %ecx,%eax
79da37:	3b 6c 24 18          	cmp    0x18(%esp),%ebp
79da3b:	1b ff                	sbb    %edi,%edi
79da3d:	03 eb                	add    %ebx,%ebp
79da3f:	f7 df                	neg    %edi
79da41:	f7 e1                	mul    %ecx
79da43:	03 c6                	add    %esi,%eax
79da45:	8b 4c 24 40          	mov    0x40(%esp),%ecx
79da49:	83 d2 00             	adc    $0x0,%edx
79da4c:	3b eb                	cmp    %ebx,%ebp
79da4e:	1b db                	sbb    %ebx,%ebx
79da50:	89 41 18             	mov    %eax,0x18(%ecx)
79da53:	8b 44 24 18          	mov    0x18(%esp),%eax
79da57:	f7 db                	neg    %ebx
79da59:	0b df                	or     %edi,%ebx
79da5b:	8b 4c 24 44          	mov    0x44(%esp),%ecx
79da5f:	3b 44 24 28          	cmp    0x28(%esp),%eax
79da63:	8d 34 2a             	lea    (%edx,%ebp,1),%esi
79da66:	1b c0                	sbb    %eax,%eax
79da68:	f7 d8                	neg    %eax
79da6a:	0b 44 24 24          	or     0x24(%esp),%eax
79da6e:	03 d8                	add    %eax,%ebx
79da70:	8b 44 24 20          	mov    0x20(%esp),%eax
79da74:	3b 44 24 1c          	cmp    0x1c(%esp),%eax
79da78:	1b c0                	sbb    %eax,%eax
79da7a:	f7 d8                	neg    %eax
79da7c:	0b 44 24 14          	or     0x14(%esp),%eax
79da80:	03 d8                	add    %eax,%ebx
79da82:	3b f2                	cmp    %edx,%esi
79da84:	1b c0                	sbb    %eax,%eax
79da86:	f7 d8                	neg    %eax
79da88:	03 d8                	add    %eax,%ebx
79da8a:	8b 44 24 10          	mov    0x10(%esp),%eax
79da8e:	c1 e8 1f             	shr    $0x1f,%eax
79da91:	03 d8                	add    %eax,%ebx
79da93:	8b 44 24 2c          	mov    0x2c(%esp),%eax
79da97:	c1 e8 1f             	shr    $0x1f,%eax
79da9a:	03 d8                	add    %eax,%ebx
79da9c:	8b 44 24 30          	mov    0x30(%esp),%eax
79daa0:	c1 e8 1f             	shr    $0x1f,%eax
79daa3:	03 d8                	add    %eax,%ebx
79daa5:	8b 01                	mov    (%ecx),%eax
79daa7:	f7 61 1c             	mull   0x1c(%ecx)
79daaa:	8b e8                	mov    %eax,%ebp
79daac:	8b c2                	mov    %edx,%eax
79daae:	89 44 24 38          	mov    %eax,0x38(%esp)
79dab2:	8d 0c 6e             	lea    (%esi,%ebp,2),%ecx
79dab5:	3b ce                	cmp    %esi,%ecx
79dab7:	1b d2                	sbb    %edx,%edx
79dab9:	03 c0                	add    %eax,%eax
79dabb:	c1 ed 1f             	shr    $0x1f,%ebp
79dabe:	f7 da                	neg    %edx
79dac0:	0b e8                	or     %eax,%ebp
79dac2:	89 54 24 1c          	mov    %edx,0x1c(%esp)
79dac6:	03 eb                	add    %ebx,%ebp
79dac8:	3b eb                	cmp    %ebx,%ebp
79daca:	8b 5c 24 44          	mov    0x44(%esp),%ebx
79dace:	1b c0                	sbb    %eax,%eax
79dad0:	03 ea                	add    %edx,%ebp
79dad2:	f7 d8                	neg    %eax
79dad4:	89 6c 24 20          	mov    %ebp,0x20(%esp)
79dad8:	89 44 24 18          	mov    %eax,0x18(%esp)
79dadc:	8b 43 04             	mov    0x4(%ebx),%eax
79dadf:	f7 63 18             	mull   0x18(%ebx)
79dae2:	8b f8                	mov    %eax,%edi
79dae4:	89 54 24 34          	mov    %edx,0x34(%esp)
79dae8:	8d 04 12             	lea    (%edx,%edx,1),%eax
79daeb:	8d 34 79             	lea    (%ecx,%edi,2),%esi
79daee:	3b f1                	cmp    %ecx,%esi
79daf0:	1b c9                	sbb    %ecx,%ecx
79daf2:	c1 ef 1f             	shr    $0x1f,%edi
79daf5:	0b f8                	or     %eax,%edi
79daf7:	f7 d9                	neg    %ecx
79daf9:	03 fd                	add    %ebp,%edi
79dafb:	89 4c 24 28          	mov    %ecx,0x28(%esp)
79daff:	3b fd                	cmp    %ebp,%edi
79db01:	1b c0                	sbb    %eax,%eax
79db03:	03 f9                	add    %ecx,%edi
79db05:	f7 d8                	neg    %eax
79db07:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
79db0b:	89 44 24 24          	mov    %eax,0x24(%esp)
79db0f:	8b 43 08             	mov    0x8(%ebx),%eax
79db12:	f7 63 14             	mull   0x14(%ebx)
79db15:	8b e8                	mov    %eax,%ebp
79db17:	89 54 24 14          	mov    %edx,0x14(%esp)
79db1b:	8d 0c 6e             	lea    (%esi,%ebp,2),%ecx
79db1e:	3b ce                	cmp    %esi,%ecx
79db20:	1b db                	sbb    %ebx,%ebx
79db22:	8d 04 12             	lea    (%edx,%edx,1),%eax
79db25:	8b 54 24 44          	mov    0x44(%esp),%edx
79db29:	f7 db                	neg    %ebx
79db2b:	c1 ed 1f             	shr    $0x1f,%ebp
79db2e:	0b e8                	or     %eax,%ebp
79db30:	03 ef                	add    %edi,%ebp
79db32:	8b 42 0c             	mov    0xc(%edx),%eax
79db35:	3b ef                	cmp    %edi,%ebp
79db37:	1b ff                	sbb    %edi,%edi
79db39:	03 eb                	add    %ebx,%ebp
79db3b:	f7 62 10             	mull   0x10(%edx)
79db3e:	f7 df                	neg    %edi
79db40:	89 7c 24 30          	mov    %edi,0x30(%esp)