418735:	8b 4f 0c             	mov    0xc(%edi),%ecx
418738:	85 c9                	test   %ecx,%ecx
41873a:	75 3a                	jne    0x418776
41873c:	68 b8 35 40 00       	push   $0x4035b8
418741:	ff 15 74 23 45 00    	call   *0x452374
418747:	83 c4 04             	add    $0x4,%esp
41874a:	e8 a1 55 02 00       	call   0x43dcf0
41874f:	83 c0 10             	add    $0x10,%eax
418752:	74 14                	je     0x418768
418754:	e8 97 55 02 00       	call   0x43dcf0
418759:	83 c0 14             	add    $0x14,%eax
41875c:	c7 40 04 e5 09 00 00 	movl   $0x9e5,0x4(%eax)
418763:	e9 8b 03 00 00       	jmp    0x418af3
418768:	33 c0                	xor    %eax,%eax
41876a:	c7 40 04 e5 09 00 00 	movl   $0x9e5,0x4(%eax)
418771:	e9 7d 03 00 00       	jmp    0x418af3
418776:	8b 49 04             	mov    0x4(%ecx),%ecx
418779:	89 4c 24 10          	mov    %ecx,0x10(%esp)
41877d:	8d 41 ff             	lea    -0x1(%ecx),%eax
418780:	83 f8 05             	cmp    $0x5,%eax
418783:	0f 87 3e 03 00 00    	ja     0x418ac7
418789:	8b 75 0c             	mov    0xc(%ebp),%esi
41878c:	83 f9 01             	cmp    $0x1,%ecx
41878f:	0f 85 18 01 00 00    	jne    0x4188ad
418795:	89 5e 54             	mov    %ebx,0x54(%esi)
418798:	89 5e 58             	mov    %ebx,0x58(%esi)
41879b:	8b 47 10             	mov    0x10(%edi),%eax
41879e:	85 c0                	test   %eax,%eax
4187a0:	0f 84 c2 00 00 00    	je     0x418868
4187a6:	8b 40 18             	mov    0x18(%eax),%eax
4187a9:	89 46 4c             	mov    %eax,0x4c(%esi)
4187ac:	8b 47 10             	mov    0x10(%edi),%eax
4187af:	8b 48 18             	mov    0x18(%eax),%ecx
4187b2:	89 4e 78             	mov    %ecx,0x78(%esi)
4187b5:	8b 47 10             	mov    0x10(%edi),%eax
4187b8:	2b 48 1c             	sub    0x1c(%eax),%ecx
4187bb:	89 4e 78             	mov    %ecx,0x78(%esi)
4187be:	8b 47 10             	mov    0x10(%edi),%eax
4187c1:	8b 40 1c             	mov    0x1c(%eax),%eax
4187c4:	01 46 50             	add    %eax,0x50(%esi)
4187c7:	c7 46 5c ff ff ff ff 	movl   $0xffffffff,0x5c(%esi)
4187ce:	89 5e 60             	mov    %ebx,0x60(%esi)
4187d1:	8b 47 10             	mov    0x10(%edi),%eax
4187d4:	8b 58 38             	mov    0x38(%eax),%ebx
4187d7:	8b 48 34             	mov    0x34(%eax),%ecx
4187da:	8b 50 3c             	mov    0x3c(%eax),%edx
4187dd:	8b 40 30             	mov    0x30(%eax),%eax
4187e0:	03 c0                	add    %eax,%eax
4187e2:	c7 46 54 ff ff ff 7f 	movl   $0x7fffffff,0x54(%esi)
4187e9:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
4187ed:	c7 46 58 ff ff ff 7f 	movl   $0x7fffffff,0x58(%esi)
4187f4:	8b 5c c1 f4          	mov    -0xc(%ecx,%eax,8),%ebx
4187f8:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4187fc:	89 5c 24 10          	mov    %ebx,0x10(%esp)
418800:	85 c0                	test   %eax,%eax
418802:	74 51                	je     0x418855
418804:	03 c0                	add    %eax,%eax
418806:	8b 4c c2 f4          	mov    -0xc(%edx,%eax,8),%ecx
41880a:	3b d9                	cmp    %ecx,%ebx
41880c:	75 47                	jne    0x418855
41880e:	8b 5c c2 f8          	mov    -0x8(%edx,%eax,8),%ebx
418812:	85 db                	test   %ebx,%ebx
418814:	74 3b                	je     0x418851
418816:	8b c1                	mov    %ecx,%eax
418818:	2b c3                	sub    %ebx,%eax
41881a:	8b 5c 24 1c          	mov    0x1c(%esp),%ebx
41881e:	40                   	inc    %eax
41881f:	4b                   	dec    %ebx
418820:	89 46 54             	mov    %eax,0x54(%esi)
418823:	89 4e 58             	mov    %ecx,0x58(%esi)
418826:	85 db                	test   %ebx,%ebx
418828:	7e 31                	jle    0x41885b
41882a:	8b c3                	mov    %ebx,%eax
41882c:	83 c2 04             	add    $0x4,%edx
41882f:	c1 e0 04             	shl    $0x4,%eax
418832:	03 d0                	add    %eax,%edx
418834:	8b 02                	mov    (%edx),%eax
418836:	2b 42 04             	sub    0x4(%edx),%eax
418839:	8b 4a f0             	mov    -0x10(%edx),%ecx
41883c:	3b c8                	cmp    %eax,%ecx
41883e:	75 1b                	jne    0x41885b
418840:	2b 4a f4             	sub    -0xc(%edx),%ecx
418843:	4b                   	dec    %ebx
418844:	41                   	inc    %ecx
418845:	83 ea 10             	sub    $0x10,%edx
418848:	89 4e 54             	mov    %ecx,0x54(%esi)
41884b:	85 db                	test   %ebx,%ebx
41884d:	7f e5                	jg     0x418834
41884f:	eb 0a                	jmp    0x41885b
418851:	8b 5c 24 10          	mov    0x10(%esp),%ebx
418855:	8d 43 01             	lea    0x1(%ebx),%eax
418858:	89 46 54             	mov    %eax,0x54(%esi)
41885b:	8b 47 14             	mov    0x14(%edi),%eax
41885e:	85 c0                	test   %eax,%eax
418860:	74 06                	je     0x418868
418862:	8b 40 0c             	mov    0xc(%eax),%eax
418865:	29 46 78             	sub    %eax,0x78(%esi)
418868:	8b d6                	mov    %esi,%edx
41886a:	8b cf                	mov    %edi,%ecx
41886c:	e8 2f f3 ff ff       	call   0x417ba0
418871:	8b d8                	mov    %eax,%ebx
418873:	85 db                	test   %ebx,%ebx
418875:	0f 88 41 02 00 00    	js     0x418abc
41887b:	f6 06 02             	testb  $0x2,(%esi)
41887e:	74 22                	je     0x4188a2
418880:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
418884:	74 1c                	je     0x4188a2
418886:	ff 77 10             	push   0x10(%edi)
418889:	ba d4 20 40 00       	mov    $0x4020d4,%edx
41888e:	68 8c 20 40 00       	push   $0x40208c
418893:	e8 a8 f7 ff ff       	call   0x418040
418898:	8b d8                	mov    %eax,%ebx
41889a:	85 db                	test   %ebx,%ebx
41889c:	0f 88 1a 02 00 00    	js     0x418abc
4188a2:	33 c0                	xor    %eax,%eax
4188a4:	5f                   	pop    %edi
4188a5:	5e                   	pop    %esi
4188a6:	5b                   	pop    %ebx
4188a7:	8b e5                	mov    %ebp,%esp
4188a9:	5d                   	pop    %ebp
4188aa:	c2 08 00             	ret    $0x8
4188ad:	ff 44 8e 30          	incl   0x30(%esi,%ecx,4)
4188b1:	8b 57 10             	mov    0x10(%edi),%edx
4188b4:	85 d2                	test   %edx,%edx
4188b6:	74 7a                	je     0x418932
4188b8:	8b 47 0c             	mov    0xc(%edi),%eax
4188bb:	83 78 04 04          	cmpl   $0x4,0x4(%eax)
4188bf:	75 09                	jne    0x4188ca
4188c1:	8b 42 18             	mov    0x18(%edx),%eax
4188c4:	89 46 74             	mov    %eax,0x74(%esi)
4188c7:	8b 57 10             	mov    0x10(%edi),%edx
4188ca:	8b 42 1c             	mov    0x1c(%edx),%eax
4188cd:	01 46 50             	add    %eax,0x50(%esi)
4188d0:	8b 4f 10             	mov    0x10(%edi),%ecx
4188d3:	e8 58 db ff ff       	call   0x416430
4188d8:	85 c0                	test   %eax,%eax
4188da:	74 0c                	je     0x4188e8
4188dc:	8b 4e 5c             	mov    0x5c(%esi),%ecx
4188df:	3b c8                	cmp    %eax,%ecx
4188e1:	72 02                	jb     0x4188e5
4188e3:	8b c8                	mov    %eax,%ecx
4188e5:	89 4e 5c             	mov    %ecx,0x5c(%esi)
4188e8:	8b 4e 60             	mov    0x60(%esi),%ecx
4188eb:	8b 47 10             	mov    0x10(%edi),%eax
4188ee:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
4188f2:	8b c8                	mov    %eax,%ecx
4188f4:	e8 67 db ff ff       	call   0x416460
4188f9:	39 44 24 1c          	cmp    %eax,0x1c(%esp)
4188fd:	76 06                	jbe    0x418905
4188ff:	8b 44 24 1c          	mov    0x1c(%esp),%eax
418903:	eb 08                	jmp    0x41890d
418905:	8b 4f 10             	mov    0x10(%edi),%ecx
418908:	e8 53 db ff ff       	call   0x416460
41890d:	8b 4c 24 10          	mov    0x10(%esp),%ecx
418911:	89 46 60             	mov    %eax,0x60(%esi)
418914:	83 f9 02             	cmp    $0x2,%ecx
418917:	75 0b                	jne    0x418924
418919:	8b 47 10             	mov    0x10(%edi),%eax
41891c:	8b 40 18             	mov    0x18(%eax),%eax
41891f:	01 46 64             	add    %eax,0x64(%esi)
418922:	eb 0e                	jmp    0x418932
418924:	83 f9 03             	cmp    $0x3,%ecx
418927:	75 09                	jne    0x418932
418929:	8b 47 10             	mov    0x10(%edi),%eax
41892c:	8b 40 18             	mov    0x18(%eax),%eax
41892f:	01 46 68             	add    %eax,0x68(%esi)
418932:	8b 47 14             	mov    0x14(%edi),%eax
418935:	85 c0                	test   %eax,%eax
418937:	74 0f                	je     0x418948
418939:	8b 40 08             	mov    0x8(%eax),%eax
41893c:	01 46 6c             	add    %eax,0x6c(%esi)
41893f:	8b 47 14             	mov    0x14(%edi),%eax
418942:	8b 40 0c             	mov    0xc(%eax),%eax
418945:	01 46 70             	add    %eax,0x70(%esi)
418948:	39 5f 10             	cmp    %ebx,0x10(%edi)
41894b:	74 0f                	je     0x41895c
41894d:	39 5f 14             	cmp    %ebx,0x14(%edi)
418950:	74 0a                	je     0x41895c
418952:	51                   	push   %ecx
418953:	8b d7                	mov    %edi,%edx
418955:	8b ce                	mov    %esi,%ecx
418957:	e8 c4 fa ff ff       	call   0x418420
41895c:	8b 44 24 10          	mov    0x10(%esp),%eax
418960:	83 c0 fe             	add    $0xfffffffe,%eax
418963:	83 f8 04             	cmp    $0x4,%eax
418966:	0f 87 50 01 00 00    	ja     0x418abc
41896c:	ff 24 85 20 8b 41 00 	jmp    *0x418b20(,%eax,4)
418973:	39 5e 18             	cmp    %ebx,0x18(%esi)
418976:	0f 84 40 01 00 00    	je     0x418abc
41897c:	39 5e 14             	cmp    %ebx,0x14(%esi)
41897f:	75 5b                	jne    0x4189dc
418981:	8b 47 10             	mov    0x10(%edi),%eax
418984:	85 c0                	test   %eax,%eax
418986:	74 54                	je     0x4189dc
418988:	8b 40 18             	mov    0x18(%eax),%eax
41898b:	89 44 24 10          	mov    %eax,0x10(%esp)
41898f:	db 44 24 10          	fildl  0x10(%esp)
418993:	85 c0                	test   %eax,%eax
418995:	79 06                	jns    0x41899d
418997:	dc 05 e8 42 41 00    	faddl  0x4142e8
41899d:	dd 5c 24 10          	fstpl  0x10(%esp)
4189a1:	dd 44 24 10          	fldl   0x10(%esp)
4189a5:	8b 46 4c             	mov    0x4c(%esi),%eax
4189a8:	db 46 4c             	fildl  0x4c(%esi)
4189ab:	85 c0                	test   %eax,%eax
4189ad:	79 06                	jns    0x4189b5
4189af:	dc 05 e8 42 41 00    	faddl  0x4142e8
4189b5:	dd 5c 24 10          	fstpl  0x10(%esp)
4189b9:	dc 74 24 10          	fdivl  0x10(%esp)
4189bd:	dc 1d a8 42 41 00    	fcompl 0x4142a8
4189c3:	df e0                	fnstsw %ax
4189c5:	f6 c4 05             	test   $0x5,%ah
4189c8:	7a 12                	jp     0x4189dc
4189ca:	c7 46 24 01 00 00 00 	movl   $0x1,0x24(%esi)
4189d1:	8b c3                	mov    %ebx,%eax
4189d3:	5f                   	pop    %edi
4189d4:	5e                   	pop    %esi
4189d5:	5b                   	pop    %ebx
4189d6:	8b e5                	mov    %ebp,%esp
4189d8:	5d                   	pop    %ebp
4189d9:	c2 08 00             	ret    $0x8
4189dc:	8d 4c 24 20          	lea    0x20(%esp),%ecx
4189e0:	e8 2b cc ff ff       	call   0x415610
4189e5:	8d 8c 24 90 00 00 00 	lea    0x90(%esp),%ecx
4189ec:	e8 1f cc ff ff       	call   0x415610
4189f1:	8d 8c 24 00 01 00 00 	lea    0x100(%esp),%ecx
4189f8:	e8 13 cc ff ff       	call   0x415610
4189fd:	8d 54 24 20          	lea    0x20(%esp),%edx
418a01:	89 9c 24 70 01 00 00 	mov    %ebx,0x170(%esp)
418a08:	8b cf                	mov    %edi,%ecx
418a0a:	e8 f1 d8 ff ff       	call   0x416300
418a0f:	89 44 24 10          	mov    %eax,0x10(%esp)
418a13:	85 c0                	test   %eax,%eax
418a15:	78 4a                	js     0x418a61
418a17:	33 db                	xor    %ebx,%ebx
418a19:	39 5e 04             	cmp    %ebx,0x4(%esi)
418a1c:	76 43                	jbe    0x418a61
418a1e:	8b ff                	mov    %edi,%edi
418a20:	8b 46 08             	mov    0x8(%esi),%eax
418a23:	8b d7                	mov    %edi,%edx
418a25:	8b ce                	mov    %esi,%ecx
418a27:	ff 34 98             	push   (%eax,%ebx,4)
418a2a:	8d 44 24 24          	lea    0x24(%esp),%eax
418a2e:	50                   	push   %eax
418a2f:	e8 5c da ff ff       	call   0x416490
418a34:	89 44 24 10          	mov    %eax,0x10(%esp)
418a38:	85 c0                	test   %eax,%eax
418a3a:	78 25                	js     0x418a61
418a3c:	8b 46 04             	mov    0x4(%esi),%eax
418a3f:	48                   	dec    %eax
418a40:	3b d8                	cmp    %eax,%ebx
418a42:	8d 46 0c             	lea    0xc(%esi),%eax
418a45:	75 05                	jne    0x418a4c
418a47:	b8 68 29 40 00       	mov    $0x402968,%eax
418a4c:	50                   	push   %eax
418a4d:	68 6c 29 40 00       	push   $0x40296c
418a52:	ff 15 74 23 45 00    	call   *0x452374
418a58:	43                   	inc    %ebx
418a59:	83 c4 08             	add    $0x8,%esp
418a5c:	3b 5e 04             	cmp    0x4(%esi),%ebx
418a5f:	72 bf                	jb     0x418a20
418a61:	8d 8c 24 00 01 00 00 	lea    0x100(%esp),%ecx
418a68:	e8 33 cc ff ff       	call   0x4156a0
418a6d:	8d 8c 24 90 00 00 00 	lea    0x90(%esp),%ecx
418a74:	e8 27 cc ff ff       	call   0x4156a0
418a79:	8d 4c 24 20          	lea    0x20(%esp),%ecx
418a7d:	e8 1e cc ff ff       	call   0x4156a0
418a82:	8b 5c 24 10          	mov    0x10(%esp),%ebx
418a86:	85 db                	test   %ebx,%ebx
418a88:	78 32                	js     0x418abc
418a8a:	f6 06 02             	testb  $0x2,(%esi)
418a8d:	74 2d                	je     0x418abc
418a8f:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
418a93:	74 27                	je     0x418abc
418a95:	8b 4f 0c             	mov    0xc(%edi),%ecx
418a98:	8b 41 04             	mov    0x4(%ecx),%eax
418a9b:	83 f8 02             	cmp    $0x2,%eax
418a9e:	74 1c                	je     0x418abc
418aa0:	83 f8 03             	cmp    $0x3,%eax
418aa3:	74 17                	je     0x418abc
418aa5:	ff 77 10             	push   0x10(%edi)
418aa8:	8d 41 08             	lea    0x8(%ecx),%eax
418aab:	8b cf                	mov    %edi,%ecx
418aad:	50                   	push   %eax
418aae:	e8 0d d4 ff ff       	call   0x415ec0
418ab3:	8b d0                	mov    %eax,%edx
418ab5:	e8 86 f5 ff ff       	call   0x418040
418aba:	8b d8                	mov    %eax,%ebx
418abc:	8b c3                	mov    %ebx,%eax
418abe:	5f                   	pop    %edi
418abf:	5e                   	pop    %esi
418ac0:	5b                   	pop    %ebx
418ac1:	8b e5                	mov    %ebp,%esp
418ac3:	5d                   	pop    %ebp
418ac4:	c2 08 00             	ret    $0x8
418ac7:	51                   	push   %ecx
418ac8:	68 24 36 40 00       	push   $0x403624
418acd:	ff 15 74 23 45 00    	call   *0x452374
418ad3:	83 c4 08             	add    $0x8,%esp
418ad6:	e8 15 52 02 00       	call   0x43dcf0
418adb:	83 c0 10             	add    $0x10,%eax
418ade:	74 0a                	je     0x418aea
418ae0:	e8 0b 52 02 00       	call   0x43dcf0
418ae5:	83 c0 14             	add    $0x14,%eax
418ae8:	eb 02                	jmp    0x418aec
418aea:	33 c0                	xor    %eax,%eax
418aec:	c7 40 04 f7 09 00 00 	movl   $0x9f7,0x4(%eax)
418af3:	81 3d 30 1a 45 00 15 	cmpl   $0xfffffc15,0x451a30
418afa:	fc ff ff
418afd:	c7 40 08 15 fc ff ff 	movl   $0xfffffc15,0x8(%eax)
418b04:	c7 00 84 29 40 00    	movl   $0x402984,(%eax)
418b0a:	75 06                	jne    0x418b12
418b0c:	ff 15 58 20 45 00    	call   *0x452058
418b12:	5f                   	pop    %edi
418b13:	5e                   	pop    %esi
418b14:	b8 15 fc ff ff       	mov    $0xfffffc15,%eax
418b19:	5b                   	pop    %ebx
418b1a:	8b e5                	mov    %ebp,%esp
418b1c:	5d                   	pop    %ebp
418b1d:	c2 08 00             	ret    $0x8
418b20:	73 89                	jae    0x418aab
418b22:	41                   	inc    %ecx
418b23:	00 73 89             	add    %dh,-0x77(%ebx)
418b26:	41                   	inc    %ecx
418b27:	00 7c 89 41          	add    %bh,0x41(%ecx,%ecx,4)
418b2b:	00 7c 89 41          	add    %bh,0x41(%ecx,%ecx,4)
418b2f:	00 7c 89 41          	add    %bh,0x41(%ecx,%ecx,4)
418b33:	00 cc                	add    %cl,%ah
418b35:	cc                   	int3
418b36:	cc                   	int3
418b37:	cc                   	int3
418b38:	cc                   	int3
418b39:	cc                   	int3
418b3a:	cc                   	int3
418b3b:	cc                   	int3
418b3c:	cc                   	int3
418b3d:	cc                   	int3
418b3e:	cc                   	int3
418b3f:	cc                   	int3
418b40:	8b ff                	mov    %edi,%edi
418b42:	55                   	push   %ebp
418b43:	8b ec                	mov    %esp,%ebp
418b45:	81 ec 3c 01 00 00    	sub    $0x13c,%esp
418b4b:	a1 e4 f8 44 00       	mov    0x44f8e4,%eax
418b50:	33 c5                	xor    %ebp,%eax
418b52:	89 45 fc             	mov    %eax,-0x4(%ebp)
418b55:	53                   	push   %ebx
418b56:	56                   	push   %esi
418b57:	8b f1                	mov    %ecx,%esi
418b59:	8b c2                	mov    %edx,%eax