41a6ba:	83 4e 08 ff          	orl    $0xffffffff,0x8(%esi)
41a6be:	6a 00                	push   $0x0
41a6c0:	68 51 23 00 00       	push   $0x2351
41a6c5:	e8 1a d2 fe ff       	call   0x4078e4
41a6ca:	59                   	pop    %ecx
41a6cb:	59                   	pop    %ecx
41a6cc:	e8 51 f2 00 00       	call   0x429922
41a6d1:	6a 01                	push   $0x1
41a6d3:	68 30 0a 44 00       	push   $0x440a30
41a6d8:	ff 15 30 a4 44 00    	call   *0x44a430
41a6de:	cc                   	int3
41a6df:	83 ff 02             	cmp    $0x2,%edi
41a6e2:	0f 84 05 c7 fe ff    	je     0x406ded
41a6e8:	6a 00                	push   $0x0
41a6ea:	57                   	push   %edi
41a6eb:	e8 f4 d1 fe ff       	call   0x4078e4
41a6f0:	59                   	pop    %ecx
41a6f1:	59                   	pop    %ecx
41a6f2:	e9 8c c6 fe ff       	jmp    0x406d83
41a6f7:	8b 4d e8             	mov    -0x18(%ebp),%ecx
41a6fa:	85 c9                	test   %ecx,%ecx
41a6fc:	75 06                	jne    0x41a704
41a6fe:	8d 8d e0 fd ff ff    	lea    -0x220(%ebp),%ecx
41a704:	8b 43 0c             	mov    0xc(%ebx),%eax
41a707:	8b 55 f0             	mov    -0x10(%ebp),%edx
41a70a:	ff 30                	push   (%eax)
41a70c:	ff 73 04             	push   0x4(%ebx)
41a70f:	e8 a4 8d ff ff       	call   0x4134b8
41a714:	8b f8                	mov    %eax,%edi
41a716:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
41a71c:	85 ff                	test   %edi,%edi
41a71e:	0f 85 d2 c6 fe ff    	jne    0x406df6
41a724:	8b 45 e8             	mov    -0x18(%ebp),%eax
41a727:	85 c0                	test   %eax,%eax
41a729:	75 06                	jne    0x41a731
41a72b:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
41a731:	50                   	push   %eax
41a732:	6a 01                	push   $0x1
41a734:	68 12 27 00 40       	push   $0x40002712
41a739:	e8 a6 d1 fe ff       	call   0x4078e4
41a73e:	83 c4 0c             	add    $0xc,%esp
41a741:	e9 b0 c6 fe ff       	jmp    0x406df6
41a746:	e8 6a f1 00 00       	call   0x4298b5
41a74b:	33 d2                	xor    %edx,%edx
41a74d:	e9 74 c7 fe ff       	jmp    0x406ec6
41a752:	33 c0                	xor    %eax,%eax
41a754:	e9 7e c8 fe ff       	jmp    0x406fd7
41a759:	8b ca                	mov    %edx,%ecx
41a75b:	e8 70 35 ff ff       	call   0x40dcd0
41a760:	e9 16 c9 fe ff       	jmp    0x40707b
41a765:	f6 44 24 40 10       	testb  $0x10,0x40(%esp)
41a76a:	0f 84 6f c9 fe ff    	je     0x4070df
41a770:	b9 34 24 40 00       	mov    $0x402434,%ecx
41a775:	8d 44 24 6c          	lea    0x6c(%esp),%eax
41a779:	66 8b 10             	mov    (%eax),%dx
41a77c:	66 3b 11             	cmp    (%ecx),%dx
41a77f:	75 1e                	jne    0x41a79f
41a781:	66 85 d2             	test   %dx,%dx
41a784:	74 15                	je     0x41a79b
41a786:	66 8b 50 02          	mov    0x2(%eax),%dx
41a78a:	66 3b 51 02          	cmp    0x2(%ecx),%dx
41a78e:	75 0f                	jne    0x41a79f
41a790:	83 c0 04             	add    $0x4,%eax
41a793:	83 c1 04             	add    $0x4,%ecx
41a796:	66 85 d2             	test   %dx,%dx
41a799:	75 de                	jne    0x41a779
41a79b:	33 c0                	xor    %eax,%eax
41a79d:	eb 05                	jmp    0x41a7a4
41a79f:	1b c0                	sbb    %eax,%eax
41a7a1:	83 c8 01             	or     $0x1,%eax
41a7a4:	85 c0                	test   %eax,%eax
41a7a6:	0f 84 33 c9 fe ff    	je     0x4070df
41a7ac:	b9 10 25 40 00       	mov    $0x402510,%ecx
41a7b1:	8d 44 24 6c          	lea    0x6c(%esp),%eax
41a7b5:	66 8b 10             	mov    (%eax),%dx
41a7b8:	66 3b 11             	cmp    (%ecx),%dx
41a7bb:	75 1e                	jne    0x41a7db
41a7bd:	66 85 d2             	test   %dx,%dx
41a7c0:	74 15                	je     0x41a7d7
41a7c2:	66 8b 50 02          	mov    0x2(%eax),%dx
41a7c6:	66 3b 51 02          	cmp    0x2(%ecx),%dx
41a7ca:	75 0f                	jne    0x41a7db
41a7cc:	83 c0 04             	add    $0x4,%eax
41a7cf:	83 c1 04             	add    $0x4,%ecx
41a7d2:	66 85 d2             	test   %dx,%dx
41a7d5:	75 de                	jne    0x41a7b5
41a7d7:	33 c0                	xor    %eax,%eax
41a7d9:	eb 05                	jmp    0x41a7e0
41a7db:	1b c0                	sbb    %eax,%eax
41a7dd:	83 c8 01             	or     $0x1,%eax
41a7e0:	85 c0                	test   %eax,%eax
41a7e2:	0f 84 f7 c8 fe ff    	je     0x4070df
41a7e8:	e9 c0 c8 fe ff       	jmp    0x4070ad
41a7ed:	80 3d 44 67 43 00 00 	cmpb   $0x0,0x436744
41a7f4:	0f 84 3b c8 fe ff    	je     0x407035
41a7fa:	e9 07 c9 fe ff       	jmp    0x407106
41a7ff:	8b ce                	mov    %esi,%ecx
41a801:	e8 5a 34 ff ff       	call   0x40dc60
41a806:	e8 17 f1 00 00       	call   0x429922
41a80b:	6a 01                	push   $0x1
41a80d:	68 30 0a 44 00       	push   $0x440a30
41a812:	ff 15 30 a4 44 00    	call   *0x44a430
41a818:	cc                   	int3
41a819:	8b 0d a8 25 43 00    	mov    0x4325a8,%ecx
41a81f:	e8 ae 79 ff ff       	call   0x4121d2
41a824:	8b 35 dc 65 43 00    	mov    0x4365dc,%esi
41a82a:	6a 00                	push   $0x0
41a82c:	e8 3f 76 ff ff       	call   0x411e70
41a831:	85 c0                	test   %eax,%eax
41a833:	74 f5                	je     0x41a82a
41a835:	56                   	push   %esi
41a836:	ff 15 a4 a3 44 00    	call   *0x44a3a4
41a83c:	cc                   	int3
41a83d:	83 f8 7a             	cmp    $0x7a,%eax
41a840:	0f 87 17 ca fe ff    	ja     0x40725d
41a846:	83 c0 e0             	add    $0xffffffe0,%eax
41a849:	0f b7 c8             	movzwl %ax,%ecx
41a84c:	e9 0e ca fe ff       	jmp    0x40725f
41a851:	0f b7 c9             	movzwl %cx,%ecx
41a854:	83 e9 40             	sub    $0x40,%ecx
41a857:	e8 21 f2 00 00       	call   0x429a7d
41a85c:	8b 3e                	mov    (%esi),%edi
41a85e:	e9 0e ca fe ff       	jmp    0x407271
41a863:	8d 44 24 18          	lea    0x18(%esp),%eax
41a867:	e9 55 cb fe ff       	jmp    0x4073c1
41a86c:	8d 74 24 18          	lea    0x18(%esp),%esi
41a870:	e9 7c cb fe ff       	jmp    0x4073f1
41a875:	83 c6 08             	add    $0x8,%esi
41a878:	56                   	push   %esi
41a879:	57                   	push   %edi
41a87a:	89 74 24 18          	mov    %esi,0x18(%esp)
41a87e:	ff 15 cc a3 44 00    	call   *0x44a3cc
41a884:	89 44 24 18          	mov    %eax,0x18(%esp)
41a888:	59                   	pop    %ecx
41a889:	59                   	pop    %ecx
41a88a:	85 c0                	test   %eax,%eax
41a88c:	74 1e                	je     0x41a8ac
41a88e:	3b c7                	cmp    %edi,%eax
41a890:	76 1a                	jbe    0x41a8ac
41a892:	0f b7 30             	movzwl (%eax),%esi
41a895:	33 c9                	xor    %ecx,%ecx
41a897:	57                   	push   %edi
41a898:	66 89 08             	mov    %cx,(%eax)
41a89b:	ff 15 98 a0 44 00    	call   *0x44a098
41a8a1:	8b d8                	mov    %eax,%ebx
41a8a3:	8b 44 24 10          	mov    0x10(%esp),%eax
41a8a7:	66 89 30             	mov    %si,(%eax)
41a8aa:	eb 09                	jmp    0x41a8b5
41a8ac:	57                   	push   %edi
41a8ad:	ff 15 98 a0 44 00    	call   *0x44a098
41a8b3:	8b d8                	mov    %eax,%ebx
41a8b5:	33 f6                	xor    %esi,%esi
41a8b7:	83 fb ff             	cmp    $0xffffffff,%ebx
41a8ba:	0f 85 92 cb fe ff    	jne    0x407452
41a8c0:	e9 e8 cb fe ff       	jmp    0x4074ad
41a8c5:	56                   	push   %esi
41a8c6:	ff 15 f4 a0 44 00    	call   *0x44a0f4
41a8cc:	83 f8 01             	cmp    $0x1,%eax
41a8cf:	0f 86 7b cb fe ff    	jbe    0x407450
41a8d5:	33 db                	xor    %ebx,%ebx
41a8d7:	43                   	inc    %ebx
41a8d8:	e9 73 cb fe ff       	jmp    0x407450
41a8dd:	56                   	push   %esi
41a8de:	ff 15 98 a0 44 00    	call   *0x44a098
41a8e4:	33 db                	xor    %ebx,%ebx
41a8e6:	83 f8 ff             	cmp    $0xffffffff,%eax
41a8e9:	0f 95 c3             	setne  %bl
41a8ec:	e9 5f cb fe ff       	jmp    0x407450
41a8f1:	8b 43 0c             	mov    0xc(%ebx),%eax
41a8f4:	85 c0                	test   %eax,%eax
41a8f6:	0f 84 f9 cb fe ff    	je     0x4074f5
41a8fc:	8b f0                	mov    %eax,%esi
41a8fe:	89 75 dc             	mov    %esi,-0x24(%ebp)
41a901:	8b 46 0c             	mov    0xc(%esi),%eax
41a904:	85 c0                	test   %eax,%eax
41a906:	75 f4                	jne    0x41a8fc
41a908:	8b 75 e0             	mov    -0x20(%ebp),%esi
41a90b:	8b 5d dc             	mov    -0x24(%ebp),%ebx
41a90e:	e9 e2 cb fe ff       	jmp    0x4074f5
41a913:	33 c0                	xor    %eax,%eax
41a915:	c6 45 e7 01          	movb   $0x1,-0x19(%ebp)
41a919:	40                   	inc    %eax
41a91a:	89 45 e0             	mov    %eax,-0x20(%ebp)
41a91d:	e9 03 cc fe ff       	jmp    0x407525
41a922:	81 36 00 20 00 00    	xorl   $0x2000,(%esi)
41a928:	e9 5a cc fe ff       	jmp    0x407587
41a92d:	80 7d e7 00          	cmpb   $0x0,-0x19(%ebp)
41a931:	74 0b                	je     0x41a93e
41a933:	81 36 00 08 00 00    	xorl   $0x800,(%esi)
41a939:	e9 49 cc fe ff       	jmp    0x407587
41a93e:	81 0e 00 08 00 00    	orl    $0x800,(%esi)
41a944:	e9 3e cc fe ff       	jmp    0x407587
41a949:	81 36 00 10 00 00    	xorl   $0x1000,(%esi)
41a94f:	e9 33 cc fe ff       	jmp    0x407587
41a954:	80 7d e7 00          	cmpb   $0x0,-0x19(%ebp)
41a958:	74 2c                	je     0x41a986
41a95a:	8d 4b 02             	lea    0x2(%ebx),%ecx
41a95d:	33 d2                	xor    %edx,%edx
41a95f:	66 8b 03             	mov    (%ebx),%ax
41a962:	83 c3 02             	add    $0x2,%ebx
41a965:	66 3b c2             	cmp    %dx,%ax
41a968:	75 f5                	jne    0x41a95f
41a96a:	2b d9                	sub    %ecx,%ebx
41a96c:	d1 fb                	sar    $1,%ebx
41a96e:	83 fb 01             	cmp    $0x1,%ebx
41a971:	0f 87 8f 00 00 00    	ja     0x41aa06
41a977:	c7 46 04 06 00 00 00 	movl   $0x6,0x4(%esi)
41a97e:	89 56 08             	mov    %edx,0x8(%esi)
41a981:	e9 14 cc fe ff       	jmp    0x40759a
41a986:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41a989:	8b d6                	mov    %esi,%edx
41a98b:	0f b7 c1             	movzwl %cx,%eax
41a98e:	83 c0 03             	add    $0x3,%eax
41a991:	8d 0c 47             	lea    (%edi,%eax,2),%ecx
41a994:	e8 e1 f9 00 00       	call   0x42a37a
41a999:	85 c0                	test   %eax,%eax
41a99b:	0f 85 a3 00 00 00    	jne    0x41aa44
41a9a1:	f6 46 08 01          	testb  $0x1,0x8(%esi)
41a9a5:	0f 84 ef cb fe ff    	je     0x40759a
41a9ab:	81 0e 00 10 00 00    	orl    $0x1000,(%esi)
41a9b1:	e9 e4 cb fe ff       	jmp    0x40759a
41a9b6:	6a 10                	push   $0x10
41a9b8:	59                   	pop    %ecx
41a9b9:	e8 12 33 ff ff       	call   0x40dcd0
41a9be:	85 c0                	test   %eax,%eax
41a9c0:	0f 84 86 00 00 00    	je     0x41aa4c
41a9c6:	89 43 0c             	mov    %eax,0xc(%ebx)
41a9c9:	33 d2                	xor    %edx,%edx
41a9cb:	8b d8                	mov    %eax,%ebx
41a9cd:	89 50 0c             	mov    %edx,0xc(%eax)
41a9d0:	8b 46 48             	mov    0x48(%esi),%eax
41a9d3:	89 5d dc             	mov    %ebx,-0x24(%ebp)
41a9d6:	e9 e8 cb fe ff       	jmp    0x4075c3
41a9db:	6a 2f                	push   $0x2f
41a9dd:	58                   	pop    %eax
41a9de:	33 c9                	xor    %ecx,%ecx
41a9e0:	66 89 45 e8          	mov    %ax,-0x18(%ebp)
41a9e4:	66 8b 47 04          	mov    0x4(%edi),%ax
41a9e8:	66 89 4d ec          	mov    %cx,-0x14(%ebp)
41a9ec:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41a9ef:	0f b7 c9             	movzwl %cx,%ecx
41a9f2:	83 c1 02             	add    $0x2,%ecx
41a9f5:	66 89 45 ea          	mov    %ax,-0x16(%ebp)
41a9f9:	8d 0c 4f             	lea    (%edi,%ecx,2),%ecx
41a9fc:	51                   	push   %ecx
41a9fd:	6a 01                	push   $0x1
41a9ff:	68 75 23 00 00       	push   $0x2375
41aa04:	eb 14                	jmp    0x41aa1a
41aa06:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41aa09:	0f b7 c1             	movzwl %cx,%eax
41aa0c:	83 c0 02             	add    $0x2,%eax
41aa0f:	8d 04 47             	lea    (%edi,%eax,2),%eax
41aa12:	50                   	push   %eax
41aa13:	6a 01                	push   $0x1
41aa15:	68 76 23 00 00       	push   $0x2376
41aa1a:	e8 c5 ce fe ff       	call   0x4078e4
41aa1f:	83 c4 0c             	add    $0xc,%esp
41aa22:	eb 20                	jmp    0x41aa44
41aa24:	e8 e5 ef 00 00       	call   0x429a0e
41aa29:	33 db                	xor    %ebx,%ebx
41aa2b:	53                   	push   %ebx
41aa2c:	68 81 23 00 00       	push   $0x2381
41aa31:	e8 87 b9 fe ff       	call   0x4063bd
41aa36:	59                   	pop    %ecx
41aa37:	59                   	pop    %ecx
41aa38:	88 1d 5b 90 44 00    	mov    %bl,0x44905b
41aa3e:	89 1d 0c 95 44 00    	mov    %ebx,0x44950c
41aa44:	33 c0                	xor    %eax,%eax
41aa46:	40                   	inc    %eax
41aa47:	e9 93 cb fe ff       	jmp    0x4075df
41aa4c:	e8 d1 ee 00 00       	call   0x429922
41aa51:	6a 01                	push   $0x1
41aa53:	68 30 0a 44 00       	push   $0x440a30
41aa58:	ff 15 30 a4 44 00    	call   *0x44a430
41aa5e:	cc                   	int3
41aa5f:	b9 f0 8b 44 00       	mov    $0x448bf0,%ecx
41aa64:	e9 e5 cb fe ff       	jmp    0x40764e
41aa69:	b9 f0 8b 44 00       	mov    $0x448bf0,%ecx
41aa6e:	e9 38 cc fe ff       	jmp    0x4076ab
41aa73:	68 f8 38 40 00       	push   $0x4038f8
41aa78:	56                   	push   %esi
41aa79:	ff 15 40 a4 44 00    	call   *0x44a440
41aa7f:	59                   	pop    %ecx
41aa80:	59                   	pop    %ecx
41aa81:	85 c0                	test   %eax,%eax
41aa83:	75 0a                	jne    0x41aa8f
41aa85:	a2 54 67 43 00       	mov    %al,0x436754
41aa8a:	e9 b3 cc fe ff       	jmp    0x407742
41aa8f:	33 c0                	xor    %eax,%eax
41aa91:	66 39 06             	cmp    %ax,(%esi)
41aa94:	0f 84 a8 cc fe ff    	je     0x407742
41aa9a:	50                   	push   %eax
41aa9b:	68 a6 23 00 40       	push   $0x400023a6
41aaa0:	e8 3f ce fe ff       	call   0x4078e4
41aaa5:	33 c0                	xor    %eax,%eax
41aaa7:	59                   	pop    %ecx
41aaa8:	40                   	inc    %eax
41aaa9:	59                   	pop    %ecx
41aaaa:	a3 dc 65 43 00       	mov    %eax,0x4365dc
41aaaf:	e9 bb cc fe ff       	jmp    0x40776f
41aab4:	6a 00                	push   $0x0
41aab6:	68 1c 27 00 40       	push   $0x4000271c
41aabb:	e8 24 ce fe ff       	call   0x4078e4
41aac0:	59                   	pop    %ecx
41aac1:	59                   	pop    %ecx
41aac2:	33 c0                	xor    %eax,%eax
41aac4:	40                   	inc    %eax
41aac5:	e9 a5 cc fe ff       	jmp    0x40776f
41aaca:	56                   	push   %esi
41aacb:	6a 08                	push   $0x8
41aacd:	e8 12 ce fe ff       	call   0x4078e4
41aad2:	59                   	pop    %ecx
41aad3:	59                   	pop    %ecx
41aad4:	6a 08                	push   $0x8
41aad6:	58                   	pop    %eax
41aad7:	e9 1d cd fe ff       	jmp    0x4077f9
41aadc:	ff 15 80 a0 44 00    	call   *0x44a080
41aae2:	8b f0                	mov    %eax,%esi
41aae4:	e9 07 cd fe ff       	jmp    0x4077f0
41aae9:	e8 34 ee 00 00       	call   0x429922
41aaee:	6a 01                	push   $0x1
41aaf0:	68 30 0a 44 00       	push   $0x440a30
41aaf5:	ff 15 30 a4 44 00    	call   *0x44a430
41aafb:	6a 5c                	push   $0x5c
41aafd:	5a                   	pop    %edx
41aafe:	8b cb                	mov    %ebx,%ecx
41ab00:	e8 f0 56 ff ff       	call   0x4101f5
41ab05:	6a 2e                	push   $0x2e
41ab07:	59                   	pop    %ecx
41ab08:	85 c0                	test   %eax,%eax
41ab0a:	75 26                	jne    0x41ab32
41ab0c:	66 39 0b             	cmp    %cx,(%ebx)
41ab0f:	0f 85 76 cd fe ff    	jne    0x40788b
41ab15:	0f b7 43 02          	movzwl 0x2(%ebx),%eax
41ab19:	66 85 c0             	test   %ax,%ax
41ab1c:	0f 84 69 cd fe ff    	je     0x40788b
41ab22:	66 3b c1             	cmp    %cx,%ax
41ab25:	0f 84 60 cd fe ff    	je     0x40788b
41ab2b:	33 c0                	xor    %eax,%eax
41ab2d:	66 89 07             	mov    %ax,(%edi)
41ab30:	eb 44                	jmp    0x41ab76
41ab32:	66 39 48 02          	cmp    %cx,0x2(%eax)
41ab36:	0f 85 4f cd fe ff    	jne    0x40788b
41ab3c:	0f b7 50 04          	movzwl 0x4(%eax),%edx
41ab40:	66 85 d2             	test   %dx,%dx
41ab43:	0f 84 42 cd fe ff    	je     0x40788b
41ab49:	66 3b d1             	cmp    %cx,%dx
41ab4c:	0f 84 39 cd fe ff    	je     0x40788b
41ab52:	2b c3                	sub    %ebx,%eax
41ab54:	d1 f8                	sar    $1,%eax