4127b6:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4127b9:	e8 5b d7 02 00       	call   0x43ff19
4127be:	b8 c4 27 41 00       	mov    $0x4127c4,%eax
4127c3:	c3                   	ret
4127c4:	8b 5d b8             	mov    -0x48(%ebp),%ebx
4127c7:	33 ff                	xor    %edi,%edi
4127c9:	39 7b 10             	cmp    %edi,0x10(%ebx)
4127cc:	89 7d fc             	mov    %edi,-0x4(%ebp)
4127cf:	75 0d                	jne    0x4127de
4127d1:	ff 75 cc             	push   -0x34(%ebp)
4127d4:	e8 a7 d8 02 00       	call   0x440080
4127d9:	e9 ea 03 00 00       	jmp    0x412bc8
4127de:	8b 45 cc             	mov    -0x34(%ebp),%eax
4127e1:	89 45 d0             	mov    %eax,-0x30(%ebp)
4127e4:	89 7d c8             	mov    %edi,-0x38(%ebp)
4127e7:	3b 7b 0c             	cmp    0xc(%ebx),%edi
4127ea:	0f 83 0b 03 00 00    	jae    0x412afb
4127f0:	8b 43 10             	mov    0x10(%ebx),%eax
4127f3:	c6 04 07 00          	movb   $0x0,(%edi,%eax,1)
4127f7:	8b 43 14             	mov    0x14(%ebx),%eax
4127fa:	8d 3c 7f             	lea    (%edi,%edi,2),%edi
4127fd:	c1 e7 04             	shl    $0x4,%edi
412800:	03 c7                	add    %edi,%eax
412802:	8b 48 10             	mov    0x10(%eax),%ecx
412805:	3b 4b 24             	cmp    0x24(%ebx),%ecx
412808:	0f 86 95 01 00 00    	jbe    0x4129a3
41280e:	66 83 78 14 0d       	cmpw   $0xd,0x14(%eax)
412813:	0f 84 8a 01 00 00    	je     0x4129a3
412819:	8b 4b 20             	mov    0x20(%ebx),%ecx
41281c:	83 f9 02             	cmp    $0x2,%ecx
41281f:	75 4f                	jne    0x412870
412821:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
412824:	83 c1 03             	add    $0x3,%ecx
412827:	83 e1 fc             	and    $0xfffffffc,%ecx
41282a:	8d 51 07             	lea    0x7(%ecx),%edx
41282d:	6a 01                	push   $0x1
41282f:	83 e2 fc             	and    $0xfffffffc,%edx
412832:	89 55 d8             	mov    %edx,-0x28(%ebp)
412835:	83 c2 04             	add    $0x4,%edx
412838:	89 55 d4             	mov    %edx,-0x2c(%ebp)
41283b:	33 d2                	xor    %edx,%edx
41283d:	52                   	push   %edx
41283e:	52                   	push   %edx
41283f:	ff 75 d8             	push   -0x28(%ebp)
412842:	33 f6                	xor    %esi,%esi
412844:	51                   	push   %ecx
412845:	33 c9                	xor    %ecx,%ecx
412847:	8a 48 17             	mov    0x17(%eax),%cl
41284a:	52                   	push   %edx
41284b:	52                   	push   %edx
41284c:	51                   	push   %ecx
41284d:	33 c9                	xor    %ecx,%ecx
41284f:	8a 48 16             	mov    0x16(%eax),%cl
412852:	51                   	push   %ecx
412853:	ff 70 10             	push   0x10(%eax)
412856:	33 c9                	xor    %ecx,%ecx
412858:	66 8b 48 14          	mov    0x14(%eax),%cx
41285c:	51                   	push   %ecx
41285d:	ff 70 08             	push   0x8(%eax)
412860:	ff 75 d0             	push   -0x30(%ebp)
412863:	e8 44 ba ff ff       	call   0x40e2ac
412868:	83 c4 34             	add    $0x34,%esp
41286b:	e9 75 02 00 00       	jmp    0x412ae5
412870:	83 f9 01             	cmp    $0x1,%ecx
412873:	0f 85 87 00 00 00    	jne    0x412900
412879:	80 48 15 40          	orb    $0x40,0x15(%eax)
41287d:	8b 43 14             	mov    0x14(%ebx),%eax
412880:	8b 4d c8             	mov    -0x38(%ebp),%ecx
412883:	c7 44 38 10 04 00 00 	movl   $0x4,0x10(%eax,%edi,1)
41288a:	00
41288b:	8b 43 10             	mov    0x10(%ebx),%eax
41288e:	c6 04 01 01          	movb   $0x1,(%ecx,%eax,1)
412892:	8b 43 14             	mov    0x14(%ebx),%eax
412895:	03 c7                	add    %edi,%eax
412897:	89 45 d8             	mov    %eax,-0x28(%ebp)
41289a:	0f b7 40 14          	movzwl 0x14(%eax),%eax
41289e:	50                   	push   %eax
41289f:	e8 d9 ba ff ff       	call   0x40e37d
4128a4:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4128a7:	8d 74 08 ff          	lea    -0x1(%eax,%ecx,1),%esi
4128ab:	48                   	dec    %eax
4128ac:	f7 d0                	not    %eax
4128ae:	23 f0                	and    %eax,%esi
4128b0:	8b 45 d8             	mov    -0x28(%ebp),%eax
4128b3:	8b 48 10             	mov    0x10(%eax),%ecx
4128b6:	8d 4c 31 03          	lea    0x3(%ecx,%esi,1),%ecx
4128ba:	83 e1 fc             	and    $0xfffffffc,%ecx
4128bd:	8d 51 07             	lea    0x7(%ecx),%edx
4128c0:	83 e2 fc             	and    $0xfffffffc,%edx
4128c3:	89 55 d8             	mov    %edx,-0x28(%ebp)
4128c6:	83 c2 04             	add    $0x4,%edx
4128c9:	89 55 d4             	mov    %edx,-0x2c(%ebp)
4128cc:	33 d2                	xor    %edx,%edx
4128ce:	52                   	push   %edx
4128cf:	52                   	push   %edx
4128d0:	52                   	push   %edx
4128d1:	ff 75 d8             	push   -0x28(%ebp)
4128d4:	51                   	push   %ecx
4128d5:	33 c9                	xor    %ecx,%ecx
4128d7:	8a 48 17             	mov    0x17(%eax),%cl
4128da:	56                   	push   %esi
4128db:	52                   	push   %edx
4128dc:	51                   	push   %ecx
4128dd:	33 c9                	xor    %ecx,%ecx
4128df:	8a 48 16             	mov    0x16(%eax),%cl
4128e2:	51                   	push   %ecx
4128e3:	ff 70 10             	push   0x10(%eax)
4128e6:	33 c9                	xor    %ecx,%ecx
4128e8:	66 8b 48 14          	mov    0x14(%eax),%cx
4128ec:	51                   	push   %ecx
4128ed:	ff 70 08             	push   0x8(%eax)
4128f0:	ff 75 d0             	push   -0x30(%ebp)
4128f3:	e8 b4 b9 ff ff       	call   0x40e2ac
4128f8:	83 c4 38             	add    $0x38,%esp
4128fb:	e9 e5 01 00 00       	jmp    0x412ae5
412900:	80 7d c3 00          	cmpb   $0x0,-0x3d(%ebp)
412904:	75 4b                	jne    0x412951
412906:	6a 02                	push   $0x2
412908:	8d 45 b0             	lea    -0x50(%ebp),%eax
41290b:	50                   	push   %eax
41290c:	8d 45 a4             	lea    -0x5c(%ebp),%eax
41290f:	50                   	push   %eax
412910:	ff 75 08             	push   0x8(%ebp)
412913:	33 f6                	xor    %esi,%esi
412915:	8b cb                	mov    %ebx,%ecx
412917:	c7 45 a4 89 00 00 00 	movl   $0x89,-0x5c(%ebp)
41291e:	c7 45 a8 8b 00 00 00 	movl   $0x8b,-0x58(%ebp)
412925:	89 75 b0             	mov    %esi,-0x50(%ebp)
412928:	89 75 b4             	mov    %esi,-0x4c(%ebp)
41292b:	e8 70 fc ff ff       	call   0x4125a0
412930:	39 75 b0             	cmp    %esi,-0x50(%ebp)
412933:	74 07                	je     0x41293c
412935:	be 68 c7 48 00       	mov    $0x48c768,%esi
41293a:	eb 0a                	jmp    0x412946
41293c:	39 75 b4             	cmp    %esi,-0x4c(%ebp)
41293f:	74 0c                	je     0x41294d
412941:	be 58 c7 48 00       	mov    $0x48c758,%esi
412946:	8d 7d dc             	lea    -0x24(%ebp),%edi
412949:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41294a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41294b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41294c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41294d:	c6 45 c3 01          	movb   $0x1,-0x3d(%ebp)
412951:	83 65 bc 00          	andl   $0x0,-0x44(%ebp)
412955:	6a 14                	push   $0x14
412957:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
41295b:	e8 f5 d6 02 00       	call   0x440055
412960:	59                   	pop    %ecx
412961:	89 45 bc             	mov    %eax,-0x44(%ebp)
412964:	eb 11                	jmp    0x412977
412966:	8b 4d a0             	mov    -0x60(%ebp),%ecx
412969:	e8 ab d5 02 00       	call   0x43ff19
41296e:	b8 74 29 41 00       	mov    $0x412974,%eax
412973:	c3                   	ret
412974:	8b 5d b8             	mov    -0x48(%ebp),%ebx
412977:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41297b:	83 7d bc 00          	cmpl   $0x0,-0x44(%ebp)
41297f:	75 1d                	jne    0x41299e
412981:	8b 7d c8             	mov    -0x38(%ebp),%edi
412984:	85 ff                	test   %edi,%edi
412986:	76 74                	jbe    0x4129fc
412988:	8b 75 cc             	mov    -0x34(%ebp),%esi
41298b:	83 c6 14             	add    $0x14,%esi
41298e:	ff 36                	push   (%esi)
412990:	e8 eb d6 02 00       	call   0x440080
412995:	83 c6 34             	add    $0x34,%esi
412998:	4f                   	dec    %edi
412999:	59                   	pop    %ecx
41299a:	75 f2                	jne    0x41298e
41299c:	eb 5e                	jmp    0x4129fc
41299e:	8d 75 dc             	lea    -0x24(%ebp),%esi
4129a1:	eb 79                	jmp    0x412a1c
4129a3:	66 8b 48 14          	mov    0x14(%eax),%cx
4129a7:	66 83 f9 0d          	cmp    $0xd,%cx
4129ab:	0f 85 ad 00 00 00    	jne    0x412a5e
4129b1:	83 65 bc 00          	andl   $0x0,-0x44(%ebp)
4129b5:	6a 14                	push   $0x14
4129b7:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
4129bb:	e8 95 d6 02 00       	call   0x440055
4129c0:	59                   	pop    %ecx
4129c1:	89 45 bc             	mov    %eax,-0x44(%ebp)
4129c4:	eb 11                	jmp    0x4129d7
4129c6:	8b 4d ac             	mov    -0x54(%ebp),%ecx
4129c9:	e8 4b d5 02 00       	call   0x43ff19
4129ce:	b8 d4 29 41 00       	mov    $0x4129d4,%eax
4129d3:	c3                   	ret
4129d4:	8b 5d b8             	mov    -0x48(%ebp),%ebx
4129d7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4129db:	83 7d bc 00          	cmpl   $0x0,-0x44(%ebp)
4129df:	75 36                	jne    0x412a17
4129e1:	8b 7d c8             	mov    -0x38(%ebp),%edi
4129e4:	85 ff                	test   %edi,%edi
4129e6:	76 14                	jbe    0x4129fc
4129e8:	8b 75 cc             	mov    -0x34(%ebp),%esi
4129eb:	83 c6 14             	add    $0x14,%esi
4129ee:	ff 36                	push   (%esi)
4129f0:	e8 8b d6 02 00       	call   0x440080
4129f5:	83 c6 34             	add    $0x34,%esi
4129f8:	4f                   	dec    %edi
4129f9:	59                   	pop    %ecx
4129fa:	75 f2                	jne    0x4129ee
4129fc:	ff 75 cc             	push   -0x34(%ebp)
4129ff:	e8 7c d6 02 00       	call   0x440080
412a04:	ff 73 10             	push   0x10(%ebx)
412a07:	e8 74 d6 02 00       	call   0x440080
412a0c:	83 63 10 00          	andl   $0x0,0x10(%ebx)
412a10:	59                   	pop    %ecx
412a11:	59                   	pop    %ecx
412a12:	e9 7f fd ff ff       	jmp    0x412796
412a17:	be 48 c7 48 00       	mov    $0x48c748,%esi
412a1c:	8b 45 bc             	mov    -0x44(%ebp),%eax
412a1f:	83 20 00             	andl   $0x0,(%eax)
412a22:	8d 78 04             	lea    0x4(%eax),%edi
412a25:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412a26:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412a27:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412a28:	a5                   	movsl  %ds:(%esi),%es:(%edi)
412a29:	8b 7d c8             	mov    -0x38(%ebp),%edi
412a2c:	8b 43 14             	mov    0x14(%ebx),%eax
412a2f:	8d 3c 7f             	lea    (%edi,%edi,2),%edi
412a32:	c1 e7 04             	shl    $0x4,%edi
412a35:	66 c7 44 38 14 0d 00 	movw   $0xd,0x14(%eax,%edi,1)
412a3c:	8b 43 14             	mov    0x14(%ebx),%eax
412a3f:	c7 44 38 10 04 00 00 	movl   $0x4,0x10(%eax,%edi,1)
412a46:	00
412a47:	8b 43 14             	mov    0x14(%ebx),%eax
412a4a:	03 c7                	add    %edi,%eax
412a4c:	89 45 d8             	mov    %eax,-0x28(%ebp)
412a4f:	0f b7 40 14          	movzwl 0x14(%eax),%eax
412a53:	50                   	push   %eax
412a54:	e8 24 b9 ff ff       	call   0x40e37d
412a59:	ff 75 bc             	push   -0x44(%ebp)
412a5c:	eb 35                	jmp    0x412a93
412a5e:	66 81 f9 81 00       	cmp    $0x81,%cx
412a63:	75 03                	jne    0x412a68
412a65:	ff 40 10             	incl   0x10(%eax)
412a68:	8b 43 14             	mov    0x14(%ebx),%eax
412a6b:	03 c7                	add    %edi,%eax
412a6d:	66 81 78 14 82 00    	cmpw   $0x82,0x14(%eax)
412a73:	75 0a                	jne    0x412a7f
412a75:	8b 48 10             	mov    0x10(%eax),%ecx
412a78:	8d 4c 09 02          	lea    0x2(%ecx,%ecx,1),%ecx
412a7c:	89 48 10             	mov    %ecx,0x10(%eax)
412a7f:	8b 43 14             	mov    0x14(%ebx),%eax
412a82:	03 c7                	add    %edi,%eax
412a84:	89 45 d8             	mov    %eax,-0x28(%ebp)
412a87:	0f b7 40 14          	movzwl 0x14(%eax),%eax
412a8b:	50                   	push   %eax
412a8c:	e8 ec b8 ff ff       	call   0x40e37d
412a91:	6a 00                	push   $0x0
412a93:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
412a96:	8d 74 08 ff          	lea    -0x1(%eax,%ecx,1),%esi
412a9a:	48                   	dec    %eax
412a9b:	f7 d0                	not    %eax
412a9d:	23 f0                	and    %eax,%esi
412a9f:	8b 45 d8             	mov    -0x28(%ebp),%eax
412aa2:	8b 48 10             	mov    0x10(%eax),%ecx
412aa5:	8d 4c 31 03          	lea    0x3(%ecx,%esi,1),%ecx
412aa9:	83 e1 fc             	and    $0xfffffffc,%ecx
412aac:	8d 51 07             	lea    0x7(%ecx),%edx
412aaf:	83 e2 fc             	and    $0xfffffffc,%edx
412ab2:	52                   	push   %edx
412ab3:	51                   	push   %ecx
412ab4:	33 c9                	xor    %ecx,%ecx
412ab6:	8a 48 17             	mov    0x17(%eax),%cl
412ab9:	56                   	push   %esi
412aba:	6a 00                	push   $0x0
412abc:	89 55 d4             	mov    %edx,-0x2c(%ebp)
412abf:	83 45 d4 04          	addl   $0x4,-0x2c(%ebp)
412ac3:	89 55 d8             	mov    %edx,-0x28(%ebp)
412ac6:	51                   	push   %ecx
412ac7:	33 c9                	xor    %ecx,%ecx
412ac9:	8a 48 16             	mov    0x16(%eax),%cl
412acc:	51                   	push   %ecx
412acd:	ff 70 10             	push   0x10(%eax)
412ad0:	33 c9                	xor    %ecx,%ecx
412ad2:	66 8b 48 14          	mov    0x14(%eax),%cx
412ad6:	51                   	push   %ecx
412ad7:	ff 70 08             	push   0x8(%eax)
412ada:	ff 75 d0             	push   -0x30(%ebp)
412add:	e8 cc b6 ff ff       	call   0x40e1ae
412ae2:	83 c4 30             	add    $0x30,%esp
412ae5:	83 45 d0 34          	addl   $0x34,-0x30(%ebp)
412ae9:	8b 43 14             	mov    0x14(%ebx),%eax
412aec:	ff 45 c8             	incl   -0x38(%ebp)
412aef:	89 74 38 04          	mov    %esi,0x4(%eax,%edi,1)
412af3:	8b 7d c8             	mov    -0x38(%ebp),%edi
412af6:	e9 ec fc ff ff       	jmp    0x4127e7
412afb:	83 3b 00             	cmpl   $0x0,(%ebx)
412afe:	75 63                	jne    0x412b63
412b00:	6a 01                	push   $0x1
412b02:	8b cb                	mov    %ebx,%ecx
412b04:	e8 f7 b5 ff ff       	call   0x40e100
412b09:	85 c0                	test   %eax,%eax
412b0b:	89 45 c8             	mov    %eax,-0x38(%ebp)
412b0e:	7d 4d                	jge    0x412b5d
412b10:	33 f6                	xor    %esi,%esi
412b12:	39 73 0c             	cmp    %esi,0xc(%ebx)
412b15:	76 17                	jbe    0x412b2e
412b17:	8b 7d cc             	mov    -0x34(%ebp),%edi
412b1a:	83 c7 14             	add    $0x14,%edi
412b1d:	ff 37                	push   (%edi)
412b1f:	e8 5c d5 02 00       	call   0x440080
412b24:	46                   	inc    %esi
412b25:	83 c7 34             	add    $0x34,%edi
412b28:	3b 73 0c             	cmp    0xc(%ebx),%esi
412b2b:	59                   	pop    %ecx
412b2c:	72 ef                	jb     0x412b1d
412b2e:	ff 75 cc             	push   -0x34(%ebp)
412b31:	e8 4a d5 02 00       	call   0x440080
412b36:	ff 73 10             	push   0x10(%ebx)
412b39:	e8 42 d5 02 00       	call   0x440080
412b3e:	8b 45 c4             	mov    -0x3c(%ebp),%eax
412b41:	83 63 10 00          	andl   $0x0,0x10(%ebx)
412b45:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
412b49:	59                   	pop    %ecx
412b4a:	59                   	pop    %ecx
412b4b:	85 c0                	test   %eax,%eax
412b4d:	74 06                	je     0x412b55
412b4f:	8b 08                	mov    (%eax),%ecx
412b51:	50                   	push   %eax
412b52:	ff 51 08             	call   *0x8(%ecx)
412b55:	8b 45 c8             	mov    -0x38(%ebp),%eax
412b58:	e9 d2 00 00 00       	jmp    0x412c2f
412b5d:	8b 03                	mov    (%ebx),%eax
412b5f:	c6 40 04 01          	movb   $0x1,0x4(%eax)
412b63:	ff 75 d4             	push   -0x2c(%ebp)
412b66:	83 63 08 00          	andl   $0x0,0x8(%ebx)
412b6a:	c6 45 fc 0a          	movb   $0xa,-0x4(%ebp)
412b6e:	e8 e2 d4 02 00       	call   0x440055
412b73:	59                   	pop    %ecx
412b74:	89 43 08             	mov    %eax,0x8(%ebx)
412b77:	eb 11                	jmp    0x412b8a
412b79:	8b 4d ac             	mov    -0x54(%ebp),%ecx
412b7c:	e8 98 d3 02 00       	call   0x43ff19
412b81:	b8 87 2b 41 00       	mov    $0x412b87,%eax
412b86:	c3                   	ret
412b87:	8b 5d b8             	mov    -0x48(%ebp),%ebx
412b8a:	8b 43 08             	mov    0x8(%ebx),%eax
412b8d:	33 ff                	xor    %edi,%edi
412b8f:	3b c7                	cmp    %edi,%eax
412b91:	89 7d fc             	mov    %edi,-0x4(%ebp)
412b94:	75 4b                	jne    0x412be1
412b96:	39 7b 0c             	cmp    %edi,0xc(%ebx)
412b99:	76 19                	jbe    0x412bb4
412b9b:	8b 75 cc             	mov    -0x34(%ebp),%esi
412b9e:	83 c6 14             	add    $0x14,%esi
412ba1:	ff 36                	push   (%esi)
412ba3:	e8 d8 d4 02 00       	call   0x440080
412ba8:	47                   	inc    %edi