41e6df:	0f 84 f2 00 00 00    	je     0x41e7d7
41e6e5:	84 59 1c             	test   %bl,0x1c(%ecx)
41e6e8:	0f 84 e9 00 00 00    	je     0x41e7d7
41e6ee:	50                   	push   %eax
41e6ef:	ff 71 14             	push   0x14(%ecx)
41e6f2:	ff 71 10             	push   0x10(%ecx)
41e6f5:	6a 2a                	push   $0x2a
41e6f7:	eb b6                	jmp    0x41e6af
41e6f9:	ff 77 14             	push   0x14(%edi)
41e6fc:	8d 4d d0             	lea    -0x30(%ebp),%ecx
41e6ff:	68 67 1d 00 00       	push   $0x1d67
41e704:	e8 c3 df fe ff       	call   0x40c6cc
41e709:	85 c0                	test   %eax,%eax
41e70b:	79 29                	jns    0x41e736
41e70d:	8b 0d 00 b0 42 00    	mov    0x42b000,%ecx
41e713:	81 f9 00 b0 42 00    	cmp    $0x42b000,%ecx
41e719:	0f 84 b8 00 00 00    	je     0x41e7d7
41e71f:	84 59 1c             	test   %bl,0x1c(%ecx)
41e722:	0f 84 af 00 00 00    	je     0x41e7d7
41e728:	50                   	push   %eax
41e729:	ff 71 14             	push   0x14(%ecx)
41e72c:	ff 71 10             	push   0x10(%ecx)
41e72f:	6a 2b                	push   $0x2b
41e731:	e9 79 ff ff ff       	jmp    0x41e6af
41e736:	ff 77 14             	push   0x14(%edi)
41e739:	8d 4d dc             	lea    -0x24(%ebp),%ecx
41e73c:	68 68 1d 00 00       	push   $0x1d68
41e741:	e8 86 df fe ff       	call   0x40c6cc
41e746:	85 c0                	test   %eax,%eax
41e748:	79 21                	jns    0x41e76b
41e74a:	8b 0d 00 b0 42 00    	mov    0x42b000,%ecx
41e750:	81 f9 00 b0 42 00    	cmp    $0x42b000,%ecx
41e756:	74 7f                	je     0x41e7d7
41e758:	84 59 1c             	test   %bl,0x1c(%ecx)
41e75b:	74 7a                	je     0x41e7d7
41e75d:	50                   	push   %eax
41e75e:	ff 71 14             	push   0x14(%ecx)
41e761:	ff 71 10             	push   0x10(%ecx)
41e764:	6a 2c                	push   $0x2c
41e766:	e9 44 ff ff ff       	jmp    0x41e6af
41e76b:	8b 45 b8             	mov    -0x48(%ebp),%eax
41e76e:	89 45 a4             	mov    %eax,-0x5c(%ebp)
41e771:	8b 45 c4             	mov    -0x3c(%ebp),%eax
41e774:	89 45 a8             	mov    %eax,-0x58(%ebp)
41e777:	8b 45 d0             	mov    -0x30(%ebp),%eax
41e77a:	89 45 ac             	mov    %eax,-0x54(%ebp)
41e77d:	8b 45 dc             	mov    -0x24(%ebp),%eax
41e780:	89 45 b0             	mov    %eax,-0x50(%ebp)
41e783:	8d 45 f0             	lea    -0x10(%ebp),%eax
41e786:	50                   	push   %eax
41e787:	8d 45 a4             	lea    -0x5c(%ebp),%eax
41e78a:	50                   	push   %eax
41e78b:	ff 77 24             	push   0x24(%edi)
41e78e:	ff 75 08             	push   0x8(%ebp)
41e791:	ff 15 88 c4 42 00    	call   *0x42c488
41e797:	85 c0                	test   %eax,%eax
41e799:	79 2c                	jns    0x41e7c7
41e79b:	8b 0d 00 b0 42 00    	mov    0x42b000,%ecx
41e7a1:	81 f9 00 b0 42 00    	cmp    $0x42b000,%ecx
41e7a7:	74 19                	je     0x41e7c2
41e7a9:	84 59 1c             	test   %bl,0x1c(%ecx)
41e7ac:	74 14                	je     0x41e7c2
41e7ae:	50                   	push   %eax
41e7af:	ff 71 14             	push   0x14(%ecx)
41e7b2:	ba c4 4c 40 00       	mov    $0x404cc4,%edx
41e7b7:	ff 71 10             	push   0x10(%ecx)
41e7ba:	6a 2d                	push   $0x2d
41e7bc:	59                   	pop    %ecx
41e7bd:	e8 0c 8c fe ff       	call   0x4073ce
41e7c2:	89 75 f0             	mov    %esi,-0x10(%ebp)
41e7c5:	eb 10                	jmp    0x41e7d7
41e7c7:	51                   	push   %ecx
41e7c8:	ba 40 46 40 00       	mov    $0x404640,%edx
41e7cd:	b9 01 00 00 80       	mov    $0x80000001,%ecx
41e7d2:	e8 7a 3e ff ff       	call   0x412651
41e7d7:	8b 75 f0             	mov    -0x10(%ebp),%esi
41e7da:	53                   	push   %ebx
41e7db:	8d 4d dc             	lea    -0x24(%ebp),%ecx
41e7de:	e8 42 e4 fe ff       	call   0x40cc25
41e7e3:	53                   	push   %ebx
41e7e4:	8d 4d d0             	lea    -0x30(%ebp),%ecx
41e7e7:	e8 39 e4 fe ff       	call   0x40cc25
41e7ec:	53                   	push   %ebx
41e7ed:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
41e7f0:	e8 30 e4 fe ff       	call   0x40cc25
41e7f5:	53                   	push   %ebx
41e7f6:	8d 4d b8             	lea    -0x48(%ebp),%ecx
41e7f9:	e8 27 e4 fe ff       	call   0x40cc25
41e7fe:	8b c6                	mov    %esi,%eax
41e800:	e8 31 98 00 00       	call   0x428036
41e805:	c2 04 00             	ret    $0x4
41e808:	68 24 02 00 00       	push   $0x224
41e80d:	b8 43 8d 42 00       	mov    $0x428d43,%eax
41e812:	e8 84 98 00 00       	call   0x42809b
41e817:	8b f9                	mov    %ecx,%edi
41e819:	33 db                	xor    %ebx,%ebx
41e81b:	89 9d e4 fd ff ff    	mov    %ebx,-0x21c(%ebp)
41e821:	89 9d e0 fd ff ff    	mov    %ebx,-0x220(%ebp)
41e827:	89 9d dc fd ff ff    	mov    %ebx,-0x224(%ebp)
41e82d:	89 9d d0 fd ff ff    	mov    %ebx,-0x230(%ebp)
41e833:	89 9d d8 fd ff ff    	mov    %ebx,-0x228(%ebp)
41e839:	89 9d d4 fd ff ff    	mov    %ebx,-0x22c(%ebp)
41e83f:	33 c0                	xor    %eax,%eax
41e841:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41e844:	68 18 4c 40 00       	push   $0x404c18
41e849:	8d 8d d0 fd ff ff    	lea    -0x230(%ebp),%ecx
41e84f:	66 89 85 e8 fd ff ff 	mov    %ax,-0x218(%ebp)
41e856:	e8 5d d8 fe ff       	call   0x40c0b8
41e85b:	8b f0                	mov    %eax,%esi
41e85d:	85 f6                	test   %esi,%esi
41e85f:	79 28                	jns    0x41e889
41e861:	a1 00 b0 42 00       	mov    0x42b000,%eax
41e866:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
41e86b:	0f 84 6a 01 00 00    	je     0x41e9db
41e871:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
41e875:	0f 84 60 01 00 00    	je     0x41e9db
41e87b:	56                   	push   %esi
41e87c:	ff 70 14             	push   0x14(%eax)
41e87f:	ff 70 10             	push   0x10(%eax)
41e882:	6a 2e                	push   $0x2e
41e884:	e9 47 01 00 00       	jmp    0x41e9d0
41e889:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
41e88f:	50                   	push   %eax
41e890:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
41e896:	50                   	push   %eax
41e897:	53                   	push   %ebx
41e898:	6a 03                	push   $0x3
41e89a:	53                   	push   %ebx
41e89b:	53                   	push   %ebx
41e89c:	53                   	push   %ebx
41e89d:	68 30 4c 40 00       	push   $0x404c30
41e8a2:	68 01 00 00 80       	push   $0x80000001
41e8a7:	ff 15 40 c0 42 00    	call   *0x42c040
41e8ad:	85 c0                	test   %eax,%eax
41e8af:	0f 85 eb 00 00 00    	jne    0x41e9a0
41e8b5:	8b 8d e4 fd ff ff    	mov    -0x21c(%ebp),%ecx
41e8bb:	85 c9                	test   %ecx,%ecx
41e8bd:	0f 84 dd 00 00 00    	je     0x41e9a0
41e8c3:	83 bd e0 fd ff ff 02 	cmpl   $0x2,-0x220(%ebp)
41e8ca:	75 7e                	jne    0x41e94a
41e8cc:	8d 85 dc fd ff ff    	lea    -0x224(%ebp),%eax
41e8d2:	c7 85 dc fd ff ff 08 	movl   $0x208,-0x224(%ebp)
41e8d9:	02 00 00
41e8dc:	50                   	push   %eax
41e8dd:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
41e8e3:	50                   	push   %eax
41e8e4:	53                   	push   %ebx
41e8e5:	6a 02                	push   $0x2
41e8e7:	ff 77 04             	push   0x4(%edi)
41e8ea:	53                   	push   %ebx
41e8eb:	51                   	push   %ecx
41e8ec:	ff 15 28 c0 42 00    	call   *0x42c028
41e8f2:	85 c0                	test   %eax,%eax
41e8f4:	75 4e                	jne    0x41e944
41e8f6:	68 18 4c 40 00       	push   $0x404c18
41e8fb:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
41e901:	50                   	push   %eax
41e902:	8d 85 d0 fd ff ff    	lea    -0x230(%ebp),%eax
41e908:	68 b8 4c 40 00       	push   $0x404cb8
41e90d:	50                   	push   %eax
41e90e:	e8 af db fe ff       	call   0x40c4c2
41e913:	8b f0                	mov    %eax,%esi
41e915:	83 c4 10             	add    $0x10,%esp
41e918:	85 f6                	test   %esi,%esi
41e91a:	79 28                	jns    0x41e944
41e91c:	a1 00 b0 42 00       	mov    0x42b000,%eax
41e921:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
41e926:	0f 84 af 00 00 00    	je     0x41e9db
41e92c:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
41e930:	0f 84 a5 00 00 00    	je     0x41e9db
41e936:	56                   	push   %esi
41e937:	ff 70 14             	push   0x14(%eax)
41e93a:	ff 70 10             	push   0x10(%eax)
41e93d:	6a 30                	push   $0x30
41e93f:	e9 8c 00 00 00       	jmp    0x41e9d0
41e944:	8b 8d e4 fd ff ff    	mov    -0x21c(%ebp),%ecx
41e94a:	8b 85 d8 fd ff ff    	mov    -0x228(%ebp),%eax
41e950:	03 c0                	add    %eax,%eax
41e952:	50                   	push   %eax
41e953:	ff b5 d0 fd ff ff    	push   -0x230(%ebp)
41e959:	6a 01                	push   $0x1
41e95b:	53                   	push   %ebx
41e95c:	ff 77 04             	push   0x4(%edi)
41e95f:	51                   	push   %ecx
41e960:	ff 15 3c c0 42 00    	call   *0x42c03c
41e966:	85 c0                	test   %eax,%eax
41e968:	74 32                	je     0x41e99c
41e96a:	ff 15 18 c2 42 00    	call   *0x42c218
41e970:	8b f0                	mov    %eax,%esi
41e972:	85 f6                	test   %esi,%esi
41e974:	7e 09                	jle    0x41e97f
41e976:	0f b7 f6             	movzwl %si,%esi
41e979:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41e97f:	a1 00 b0 42 00       	mov    0x42b000,%eax
41e984:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
41e989:	74 50                	je     0x41e9db
41e98b:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
41e98f:	74 4a                	je     0x41e9db
41e991:	56                   	push   %esi
41e992:	ff 70 14             	push   0x14(%eax)
41e995:	ff 70 10             	push   0x10(%eax)
41e998:	6a 31                	push   $0x31
41e99a:	eb 34                	jmp    0x41e9d0
41e99c:	8b f3                	mov    %ebx,%esi
41e99e:	eb 3b                	jmp    0x41e9db
41e9a0:	ff 15 18 c2 42 00    	call   *0x42c218
41e9a6:	8b f0                	mov    %eax,%esi
41e9a8:	85 f6                	test   %esi,%esi
41e9aa:	7e 09                	jle    0x41e9b5
41e9ac:	0f b7 f6             	movzwl %si,%esi
41e9af:	81 ce 00 00 07 80    	or     $0x80070000,%esi
41e9b5:	a1 00 b0 42 00       	mov    0x42b000,%eax
41e9ba:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
41e9bf:	74 1a                	je     0x41e9db
41e9c1:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
41e9c5:	74 14                	je     0x41e9db
41e9c7:	56                   	push   %esi
41e9c8:	ff 70 14             	push   0x14(%eax)
41e9cb:	ff 70 10             	push   0x10(%eax)
41e9ce:	6a 2f                	push   $0x2f
41e9d0:	ba c4 4c 40 00       	mov    $0x404cc4,%edx
41e9d5:	59                   	pop    %ecx
41e9d6:	e8 f3 89 fe ff       	call   0x4073ce
41e9db:	83 bd e4 fd ff ff 00 	cmpl   $0x0,-0x21c(%ebp)
41e9e2:	74 12                	je     0x41e9f6
41e9e4:	ff b5 e4 fd ff ff    	push   -0x21c(%ebp)
41e9ea:	ff 15 44 c0 42 00    	call   *0x42c044
41e9f0:	89 9d e4 fd ff ff    	mov    %ebx,-0x21c(%ebp)
41e9f6:	6a 01                	push   $0x1
41e9f8:	8d 8d d0 fd ff ff    	lea    -0x230(%ebp),%ecx
41e9fe:	e8 22 e2 fe ff       	call   0x40cc25
41ea03:	8b c6                	mov    %esi,%eax
41ea05:	e8 40 96 00 00       	call   0x42804a
41ea0a:	c3                   	ret
41ea0b:	8b ff                	mov    %edi,%edi
41ea0d:	55                   	push   %ebp
41ea0e:	8b ec                	mov    %esp,%ebp
41ea10:	81 ec 24 02 00 00    	sub    $0x224,%esp
41ea16:	a1 74 b6 42 00       	mov    0x42b674,%eax
41ea1b:	33 c5                	xor    %ebp,%eax
41ea1d:	89 45 fc             	mov    %eax,-0x4(%ebp)
41ea20:	53                   	push   %ebx
41ea21:	56                   	push   %esi
41ea22:	57                   	push   %edi
41ea23:	33 c0                	xor    %eax,%eax
41ea25:	c7 85 e0 fd ff ff 08 	movl   $0x208,-0x220(%ebp)
41ea2c:	02 00 00
41ea2f:	66 89 85 f0 fd ff ff 	mov    %ax,-0x210(%ebp)
41ea36:	8b d9                	mov    %ecx,%ebx
41ea38:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
41ea3e:	89 9d e8 fd ff ff    	mov    %ebx,-0x218(%ebp)
41ea44:	50                   	push   %eax
41ea45:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
41ea4b:	33 f6                	xor    %esi,%esi
41ea4d:	50                   	push   %eax
41ea4e:	56                   	push   %esi
41ea4f:	6a 02                	push   $0x2
41ea51:	ff 73 04             	push   0x4(%ebx)
41ea54:	89 b5 e4 fd ff ff    	mov    %esi,-0x21c(%ebp)
41ea5a:	68 30 4c 40 00       	push   $0x404c30
41ea5f:	68 01 00 00 80       	push   $0x80000001
41ea64:	ff 15 28 c0 42 00    	call   *0x42c028
41ea6a:	85 c0                	test   %eax,%eax
41ea6c:	0f 85 5a 02 00 00    	jne    0x41eccc
41ea72:	83 bd e0 fd ff ff 02 	cmpl   $0x2,-0x220(%ebp)
41ea79:	0f 82 4d 02 00 00    	jb     0x41eccc
41ea7f:	8d bd f0 fd ff ff    	lea    -0x210(%ebp),%edi
41ea85:	8d 4f 02             	lea    0x2(%edi),%ecx
41ea88:	66 8b 07             	mov    (%edi),%ax
41ea8b:	83 c7 02             	add    $0x2,%edi
41ea8e:	66 3b c6             	cmp    %si,%ax
41ea91:	75 f5                	jne    0x41ea88
41ea93:	2b f9                	sub    %ecx,%edi
41ea95:	d1 ff                	sar    $1,%edi
41ea97:	83 ff 0b             	cmp    $0xb,%edi
41ea9a:	0f 82 0e 01 00 00    	jb     0x41ebae
41eaa0:	6a 16                	push   $0x16
41eaa2:	58                   	pop    %eax
41eaa3:	8b de                	mov    %esi,%ebx
41eaa5:	89 85 ec fd ff ff    	mov    %eax,-0x214(%ebp)
41eaab:	8d 8d f0 fd ff ff    	lea    -0x210(%ebp),%ecx
41eab1:	83 c1 ea             	add    $0xffffffea,%ecx
41eab4:	6a 0b                	push   $0xb
41eab6:	03 c1                	add    %ecx,%eax
41eab8:	68 18 4c 40 00       	push   $0x404c18
41eabd:	50                   	push   %eax
41eabe:	ff 15 34 c3 42 00    	call   *0x42c334
41eac4:	83 c4 0c             	add    $0xc,%esp
41eac7:	85 c0                	test   %eax,%eax
41eac9:	75 75                	jne    0x41eb40
41eacb:	85 db                	test   %ebx,%ebx
41eacd:	74 1a                	je     0x41eae9
41eacf:	8b 8d ec fd ff ff    	mov    -0x214(%ebp),%ecx
41ead5:	0f b7 84 0d d8 fd ff 	movzwl -0x228(%ebp,%ecx,1),%eax
41eadc:	ff
41eadd:	50                   	push   %eax
41eade:	ff 15 10 c3 42 00    	call   *0x42c310
41eae4:	59                   	pop    %ecx
41eae5:	85 c0                	test   %eax,%eax
41eae7:	74 57                	je     0x41eb40
41eae9:	8b 85 ec fd ff ff    	mov    -0x214(%ebp),%eax
41eaef:	0f b7 84 05 f0 fd ff 	movzwl -0x210(%ebp,%eax,1),%eax
41eaf6:	ff
41eaf7:	50                   	push   %eax
41eaf8:	ff 15 10 c3 42 00    	call   *0x42c310
41eafe:	59                   	pop    %ecx
41eaff:	85 c0                	test   %eax,%eax
41eb01:	75 10                	jne    0x41eb13
41eb03:	8b 85 ec fd ff ff    	mov    -0x214(%ebp),%eax
41eb09:	66 39 b4 05 f0 fd ff 	cmp    %si,-0x210(%ebp,%eax,1)
41eb10:	ff
41eb11:	75 33                	jne    0x41eb46
41eb13:	8b d3                	mov    %ebx,%edx
41eb15:	8d 43 ff             	lea    -0x1(%ebx),%eax
41eb18:	f7 da                	neg    %edx
41eb1a:	1b d2                	sbb    %edx,%edx
41eb1c:	23 d0                	and    %eax,%edx
41eb1e:	8d 43 0b             	lea    0xb(%ebx),%eax
41eb21:	8d 0c 12             	lea    (%edx,%edx,1),%ecx
41eb24:	3b c7                	cmp    %edi,%eax
41eb26:	72 35                	jb     0x41eb5d
41eb28:	81 f9 08 02 00 00    	cmp    $0x208,%ecx
41eb2e:	0f 83 f9 01 00 00    	jae    0x41ed2d
41eb34:	33 c0                	xor    %eax,%eax
41eb36:	66 89 84 0d f0 fd ff 	mov    %ax,-0x210(%ebp,%ecx,1)
41eb3d:	ff
41eb3e:	eb 68                	jmp    0x41eba8
41eb40:	8b 85 ec fd ff ff    	mov    -0x214(%ebp),%eax
41eb46:	43                   	inc    %ebx
41eb47:	8d 4f f5             	lea    -0xb(%edi),%ecx
41eb4a:	83 c0 02             	add    $0x2,%eax
41eb4d:	89 85 ec fd ff ff    	mov    %eax,-0x214(%ebp)
41eb53:	3b d9                	cmp    %ecx,%ebx
41eb55:	0f 86 50 ff ff ff    	jbe    0x41eaab
41eb5b:	eb 4b                	jmp    0x41eba8
41eb5d:	8d 8c 0d f0 fd ff ff 	lea    -0x210(%ebp,%ecx,1),%ecx
41eb64:	2b fb                	sub    %ebx,%edi
41eb66:	89 8d dc fd ff ff    	mov    %ecx,-0x224(%ebp)
41eb6c:	85 d2                	test   %edx,%edx
41eb6e:	74 18                	je     0x41eb88
41eb70:	8d 04 7d ec ff ff ff 	lea    -0x14(,%edi,2),%eax
41eb77:	50                   	push   %eax
41eb78:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
41eb7e:	03 85 ec fd ff ff    	add    -0x214(%ebp),%eax
41eb84:	50                   	push   %eax
41eb85:	51                   	push   %ecx
41eb86:	eb 18                	jmp    0x41eba0
41eb88:	8d 04 7d ea ff ff ff 	lea    -0x16(,%edi,2),%eax
41eb8f:	50                   	push   %eax
41eb90:	8b 85 ec fd ff ff    	mov    -0x214(%ebp),%eax