41ddb1:	6a ff                	push   $0xffffffff
41ddb3:	ba 94 1f 40 00       	mov    $0x401f94,%edx
41ddb8:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
41ddbb:	e8 23 1d ff ff       	call   0x40fae3
41ddc0:	6a 02                	push   $0x2
41ddc2:	8b d0                	mov    %eax,%edx
41ddc4:	59                   	pop    %ecx
41ddc5:	8b 02                	mov    (%edx),%eax
41ddc7:	89 45 f8             	mov    %eax,-0x8(%ebp)
41ddca:	89 1a                	mov    %ebx,(%edx)
41ddcc:	f6 c1 02             	test   $0x2,%cl
41ddcf:	74 17                	je     0x41dde8
41ddd1:	83 e1 fd             	and    $0xfffffffd,%ecx
41ddd4:	89 4d f0             	mov    %ecx,-0x10(%ebp)
41ddd7:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
41ddda:	74 0c                	je     0x41dde8
41dddc:	ff 75 e4             	push   -0x1c(%ebp)
41dddf:	ff 15 dc 62 42 00    	call   *0x4262dc
41dde5:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41dde8:	f6 c1 01             	test   $0x1,%cl
41ddeb:	74 0e                	je     0x41ddfb
41dded:	39 5d ec             	cmp    %ebx,-0x14(%ebp)
41ddf0:	74 09                	je     0x41ddfb
41ddf2:	ff 75 ec             	push   -0x14(%ebp)
41ddf5:	ff 15 dc 62 42 00    	call   *0x4262dc
41ddfb:	8b 75 f8             	mov    -0x8(%ebp),%esi
41ddfe:	85 f6                	test   %esi,%esi
41de00:	0f 84 f4 00 00 00    	je     0x41defa
41de06:	8d 4e 02             	lea    0x2(%esi),%ecx
41de09:	66 8b 06             	mov    (%esi),%ax
41de0c:	83 c6 02             	add    $0x2,%esi
41de0f:	66 3b c3             	cmp    %bx,%ax
41de12:	75 f5                	jne    0x41de09
41de14:	2b f1                	sub    %ecx,%esi
41de16:	33 d2                	xor    %edx,%edx
41de18:	d1 fe                	sar    $1,%esi
41de1a:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
41de1d:	83 c6 03             	add    $0x3,%esi
41de20:	56                   	push   %esi
41de21:	e8 bd 1c ff ff       	call   0x40fae3
41de26:	ff 75 f8             	push   -0x8(%ebp)
41de29:	ff 35 bc 4e 42 00    	push   0x424ebc
41de2f:	68 a8 26 40 00       	push   $0x4026a8
41de34:	56                   	push   %esi
41de35:	8b 75 e4             	mov    -0x1c(%ebp),%esi
41de38:	56                   	push   %esi
41de39:	e8 b9 86 fe ff       	call   0x4064f7
41de3e:	83 c4 14             	add    $0x14,%esp
41de41:	85 c0                	test   %eax,%eax
41de43:	0f 88 97 00 00 00    	js     0x41dee0
41de49:	8b ce                	mov    %esi,%ecx
41de4b:	8d 51 02             	lea    0x2(%ecx),%edx
41de4e:	66 8b 01             	mov    (%ecx),%ax
41de51:	83 c1 02             	add    $0x2,%ecx
41de54:	66 3b c3             	cmp    %bx,%ax
41de57:	75 f5                	jne    0x41de4e
41de59:	a1 70 59 42 00       	mov    0x425970,%eax
41de5e:	2b ca                	sub    %edx,%ecx
41de60:	d1 f9                	sar    $1,%ecx
41de62:	8d 0c 4d 01 00 00 00 	lea    0x1(,%ecx,2),%ecx
41de69:	85 c0                	test   %eax,%eax
41de6b:	75 05                	jne    0x41de72
41de6d:	a1 04 43 42 00       	mov    0x424304,%eax
41de72:	51                   	push   %ecx
41de73:	56                   	push   %esi
41de74:	6a 01                	push   $0x1
41de76:	53                   	push   %ebx
41de77:	50                   	push   %eax
41de78:	ff 75 e8             	push   -0x18(%ebp)
41de7b:	ff 15 10 90 42 00    	call   *0x429010
41de81:	85 c0                	test   %eax,%eax
41de83:	75 5b                	jne    0x41dee0
41de85:	38 5d ff             	cmp    %bl,-0x1(%ebp)
41de88:	74 54                	je     0x41dede
41de8a:	8b cf                	mov    %edi,%ecx
41de8c:	e8 10 04 00 00       	call   0x41e2a1
41de91:	84 c0                	test   %al,%al
41de93:	74 4b                	je     0x41dee0
41de95:	a1 30 4e 42 00       	mov    0x424e30,%eax
41de9a:	8d 55 f8             	lea    -0x8(%ebp),%edx
41de9d:	53                   	push   %ebx
41de9e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41dea1:	a1 3c 4e 42 00       	mov    0x424e3c,%eax
41dea6:	6a 01                	push   $0x1
41dea8:	89 45 ec             	mov    %eax,-0x14(%ebp)
41deab:	c7 05 3c 4e 42 00 02 	movl   $0x2,0x424e3c
41deb2:	00 00 00
41deb5:	e8 1c 20 ff ff       	call   0x40fed6
41deba:	84 c0                	test   %al,%al
41debc:	75 10                	jne    0x41dece
41debe:	53                   	push   %ebx
41debf:	53                   	push   %ebx
41dec0:	ff 77 08             	push   0x8(%edi)
41dec3:	ff 75 f4             	push   -0xc(%ebp)
41dec6:	ff 15 28 90 42 00    	call   *0x429028
41decc:	eb 12                	jmp    0x41dee0
41dece:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41ded1:	a3 30 4e 42 00       	mov    %eax,0x424e30
41ded6:	8b 45 ec             	mov    -0x14(%ebp),%eax
41ded9:	a3 3c 4e 42 00       	mov    %eax,0x424e3c
41dede:	b3 01                	mov    $0x1,%bl
41dee0:	85 f6                	test   %esi,%esi
41dee2:	74 07                	je     0x41deeb
41dee4:	56                   	push   %esi
41dee5:	ff 15 dc 62 42 00    	call   *0x4262dc
41deeb:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
41deef:	74 09                	je     0x41defa
41def1:	ff 75 f8             	push   -0x8(%ebp)
41def4:	ff 15 dc 62 42 00    	call   *0x4262dc
41defa:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
41defe:	74 09                	je     0x41df09
41df00:	ff 75 e8             	push   -0x18(%ebp)
41df03:	ff 15 1c 90 42 00    	call   *0x42901c
41df09:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
41df0d:	74 09                	je     0x41df18
41df0f:	ff 75 f4             	push   -0xc(%ebp)
41df12:	ff 15 1c 90 42 00    	call   *0x42901c
41df18:	5f                   	pop    %edi
41df19:	5e                   	pop    %esi
41df1a:	8a c3                	mov    %bl,%al
41df1c:	5b                   	pop    %ebx
41df1d:	c9                   	leave
41df1e:	c3                   	ret
41df1f:	8b ff                	mov    %edi,%edi
41df21:	55                   	push   %ebp
41df22:	8b ec                	mov    %esp,%ebp
41df24:	83 ec 34             	sub    $0x34,%esp
41df27:	53                   	push   %ebx
41df28:	56                   	push   %esi
41df29:	8b f1                	mov    %ecx,%esi
41df2b:	33 db                	xor    %ebx,%ebx
41df2d:	57                   	push   %edi
41df2e:	8d 4d f0             	lea    -0x10(%ebp),%ecx
41df31:	89 75 cc             	mov    %esi,-0x34(%ebp)
41df34:	89 5d d0             	mov    %ebx,-0x30(%ebp)
41df37:	89 5d f0             	mov    %ebx,-0x10(%ebp)
41df3a:	e8 12 05 00 00       	call   0x41e451
41df3f:	50                   	push   %eax
41df40:	bf 3f 00 0f 00       	mov    $0xf003f,%edi
41df45:	57                   	push   %edi
41df46:	53                   	push   %ebx
41df47:	68 60 26 40 00       	push   $0x402660
41df4c:	68 01 00 00 80       	push   $0x80000001
41df51:	ff 15 20 90 42 00    	call   *0x429020
41df57:	85 c0                	test   %eax,%eax
41df59:	0f 85 5e 02 00 00    	jne    0x41e1bd
41df5f:	8d 4d f4             	lea    -0xc(%ebp),%ecx
41df62:	89 5d f4             	mov    %ebx,-0xc(%ebp)
41df65:	e8 e7 04 00 00       	call   0x41e451
41df6a:	50                   	push   %eax
41df6b:	57                   	push   %edi
41df6c:	53                   	push   %ebx
41df6d:	ff 76 08             	push   0x8(%esi)
41df70:	ff 75 f0             	push   -0x10(%ebp)
41df73:	ff 15 20 90 42 00    	call   *0x429020
41df79:	85 c0                	test   %eax,%eax
41df7b:	0f 85 2d 02 00 00    	jne    0x41e1ae
41df81:	53                   	push   %ebx
41df82:	53                   	push   %ebx
41df83:	8d 45 e0             	lea    -0x20(%ebp),%eax
41df86:	50                   	push   %eax
41df87:	8d 45 e8             	lea    -0x18(%ebp),%eax
41df8a:	50                   	push   %eax
41df8b:	8d 45 d4             	lea    -0x2c(%ebp),%eax
41df8e:	50                   	push   %eax
41df8f:	53                   	push   %ebx
41df90:	53                   	push   %ebx
41df91:	53                   	push   %ebx
41df92:	53                   	push   %ebx
41df93:	53                   	push   %ebx
41df94:	53                   	push   %ebx
41df95:	ff 75 f4             	push   -0xc(%ebp)
41df98:	ff 15 2c 90 42 00    	call   *0x42902c
41df9e:	85 c0                	test   %eax,%eax
41dfa0:	0f 85 08 02 00 00    	jne    0x41e1ae
41dfa6:	83 7d d4 01          	cmpl   $0x1,-0x2c(%ebp)
41dfaa:	74 05                	je     0x41dfb1
41dfac:	e8 f3 34 00 00       	call   0x4214a4
41dfb1:	8b 45 e8             	mov    -0x18(%ebp),%eax
41dfb4:	8d 4d f8             	lea    -0x8(%ebp),%ecx
41dfb7:	8b 7d e0             	mov    -0x20(%ebp),%edi
41dfba:	40                   	inc    %eax
41dfbb:	50                   	push   %eax
41dfbc:	33 d2                	xor    %edx,%edx
41dfbe:	89 45 e8             	mov    %eax,-0x18(%ebp)
41dfc1:	d1 ef                	shr    $1,%edi
41dfc3:	e8 1b 1b ff ff       	call   0x40fae3
41dfc8:	8d 47 01             	lea    0x1(%edi),%eax
41dfcb:	33 d2                	xor    %edx,%edx
41dfcd:	50                   	push   %eax
41dfce:	8d 4d d8             	lea    -0x28(%ebp),%ecx
41dfd1:	e8 0d 1b ff ff       	call   0x40fae3
41dfd6:	8b 75 d8             	mov    -0x28(%ebp),%esi
41dfd9:	8d 45 e0             	lea    -0x20(%ebp),%eax
41dfdc:	50                   	push   %eax
41dfdd:	56                   	push   %esi
41dfde:	53                   	push   %ebx
41dfdf:	53                   	push   %ebx
41dfe0:	8d 45 e8             	lea    -0x18(%ebp),%eax
41dfe3:	50                   	push   %eax
41dfe4:	ff 75 f8             	push   -0x8(%ebp)
41dfe7:	53                   	push   %ebx
41dfe8:	ff 75 f4             	push   -0xc(%ebp)
41dfeb:	ff 15 30 90 42 00    	call   *0x429030
41dff1:	85 c0                	test   %eax,%eax
41dff3:	0f 85 9b 01 00 00    	jne    0x41e194
41dff9:	66 89 04 7e          	mov    %ax,(%esi,%edi,2)
41dffd:	8d 56 04             	lea    0x4(%esi),%edx
41e000:	8d 47 ff             	lea    -0x1(%edi),%eax
41e003:	50                   	push   %eax
41e004:	8d 4d fc             	lea    -0x4(%ebp),%ecx
41e007:	e8 d7 1a ff ff       	call   0x40fae3
41e00c:	0f b7 06             	movzwl (%esi),%eax
41e00f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41e012:	83 e8 30             	sub    $0x30,%eax
41e015:	89 45 d8             	mov    %eax,-0x28(%ebp)
41e018:	a1 04 43 42 00       	mov    0x424304,%eax
41e01d:	66 8b 10             	mov    (%eax),%dx
41e020:	66 3b 11             	cmp    (%ecx),%dx
41e023:	75 1e                	jne    0x41e043
41e025:	66 85 d2             	test   %dx,%dx
41e028:	74 15                	je     0x41e03f
41e02a:	66 8b 50 02          	mov    0x2(%eax),%dx
41e02e:	66 3b 51 02          	cmp    0x2(%ecx),%dx
41e032:	75 0f                	jne    0x41e043
41e034:	83 c0 04             	add    $0x4,%eax
41e037:	83 c1 04             	add    $0x4,%ecx
41e03a:	66 85 d2             	test   %dx,%dx
41e03d:	75 de                	jne    0x41e01d
41e03f:	8b fb                	mov    %ebx,%edi
41e041:	eb 05                	jmp    0x41e048
41e043:	1b ff                	sbb    %edi,%edi
41e045:	83 cf 01             	or     $0x1,%edi
41e048:	8b 45 fc             	mov    -0x4(%ebp),%eax
41e04b:	c7 45 ec 02 00 00 00 	movl   $0x2,-0x14(%ebp)
41e052:	0f b7 00             	movzwl (%eax),%eax
41e055:	66 85 c0             	test   %ax,%ax
41e058:	8b c8                	mov    %eax,%ecx
41e05a:	89 4d dc             	mov    %ecx,-0x24(%ebp)
41e05d:	0f 95 45 d0          	setne  -0x30(%ebp)
41e061:	66 85 c0             	test   %ax,%ax
41e064:	75 09                	jne    0x41e06f
41e066:	85 ff                	test   %edi,%edi
41e068:	74 52                	je     0x41e0bc
41e06a:	8d 45 f8             	lea    -0x8(%ebp),%eax
41e06d:	eb 03                	jmp    0x41e072
41e06f:	8d 45 fc             	lea    -0x4(%ebp),%eax
41e072:	53                   	push   %ebx
41e073:	68 80 00 00 00       	push   $0x80
41e078:	6a 03                	push   $0x3
41e07a:	53                   	push   %ebx
41e07b:	6a 03                	push   $0x3
41e07d:	68 00 00 00 80       	push   $0x80000000
41e082:	ff 30                	push   (%eax)
41e084:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41e087:	ff 15 94 60 42 00    	call   *0x426094
41e08d:	a3 30 4e 42 00       	mov    %eax,0x424e30
41e092:	83 f8 ff             	cmp    $0xffffffff,%eax
41e095:	74 1d                	je     0x41e0b4
41e097:	66 39 5d dc          	cmp    %bx,-0x24(%ebp)
41e09b:	74 05                	je     0x41e0a2
41e09d:	6a 02                	push   $0x2
41e09f:	5a                   	pop    %edx
41e0a0:	eb 03                	jmp    0x41e0a5
41e0a2:	8b 55 d8             	mov    -0x28(%ebp),%edx
41e0a5:	ff 75 d0             	push   -0x30(%ebp)
41e0a8:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
41e0ab:	e8 b3 23 ff ff       	call   0x410463
41e0b0:	84 c0                	test   %al,%al
41e0b2:	75 08                	jne    0x41e0bc
41e0b4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41e0b7:	e8 76 2d ff ff       	call   0x410e32
41e0bc:	66 39 5d dc          	cmp    %bx,-0x24(%ebp)
41e0c0:	0f 84 ac 00 00 00    	je     0x41e172
41e0c6:	ff 35 70 59 42 00    	push   0x425970
41e0cc:	8d 4d fc             	lea    -0x4(%ebp),%ecx
41e0cf:	e8 5e 01 ff ff       	call   0x40e232
41e0d4:	33 c0                	xor    %eax,%eax
41e0d6:	89 1d 70 59 42 00    	mov    %ebx,0x425970
41e0dc:	85 ff                	test   %edi,%edi
41e0de:	0f 94 c0             	sete   %al
41e0e1:	a3 14 43 42 00       	mov    %eax,0x424314
41e0e6:	85 ff                	test   %edi,%edi
41e0e8:	75 0e                	jne    0x41e0f8
41e0ea:	8d 7d dc             	lea    -0x24(%ebp),%edi
41e0ed:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
41e0f4:	8b c3                	mov    %ebx,%eax
41e0f6:	eb 0c                	jmp    0x41e104
41e0f8:	8b 45 f8             	mov    -0x8(%ebp),%eax
41e0fb:	8d 7d e4             	lea    -0x1c(%ebp),%edi
41e0fe:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41e101:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41e104:	50                   	push   %eax
41e105:	b9 70 59 42 00       	mov    $0x425970,%ecx
41e10a:	e8 23 01 ff ff       	call   0x40e232
41e10f:	8b 45 ec             	mov    -0x14(%ebp),%eax
41e112:	89 1f                	mov    %ebx,(%edi)
41e114:	a8 02                	test   $0x2,%al
41e116:	74 17                	je     0x41e12f
41e118:	83 e0 fd             	and    $0xfffffffd,%eax
41e11b:	89 45 ec             	mov    %eax,-0x14(%ebp)
41e11e:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
41e121:	74 0c                	je     0x41e12f
41e123:	ff 75 e4             	push   -0x1c(%ebp)
41e126:	ff 15 dc 62 42 00    	call   *0x4262dc
41e12c:	8b 45 ec             	mov    -0x14(%ebp),%eax
41e12f:	a8 01                	test   $0x1,%al
41e131:	74 0e                	je     0x41e141
41e133:	39 5d dc             	cmp    %ebx,-0x24(%ebp)
41e136:	74 09                	je     0x41e141
41e138:	ff 75 dc             	push   -0x24(%ebp)
41e13b:	ff 15 dc 62 42 00    	call   *0x4262dc
41e141:	8b 45 d8             	mov    -0x28(%ebp),%eax
41e144:	53                   	push   %ebx
41e145:	6a 01                	push   $0x1
41e147:	68 b9 00 00 00       	push   $0xb9
41e14c:	ff 35 04 5e 42 00    	push   0x425e04
41e152:	a3 bc 4e 42 00       	mov    %eax,0x424ebc
41e157:	ff 15 bc 62 42 00    	call   *0x4262bc
41e15d:	b1 01                	mov    $0x1,%cl
41e15f:	e8 63 f6 fe ff       	call   0x40d7c7
41e164:	e8 77 f2 fe ff       	call   0x40d3e0
41e169:	ff 75 fc             	push   -0x4(%ebp)
41e16c:	ff 15 f4 60 42 00    	call   *0x4260f4
41e172:	8b 45 cc             	mov    -0x34(%ebp),%eax
41e175:	53                   	push   %ebx
41e176:	53                   	push   %ebx
41e177:	ff 70 08             	push   0x8(%eax)
41e17a:	ff 75 f0             	push   -0x10(%ebp)
41e17d:	ff 15 28 90 42 00    	call   *0x429028
41e183:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
41e187:	b3 01                	mov    $0x1,%bl
41e189:	74 09                	je     0x41e194
41e18b:	ff 75 fc             	push   -0x4(%ebp)
41e18e:	ff 15 dc 62 42 00    	call   *0x4262dc
41e194:	85 f6                	test   %esi,%esi
41e196:	74 07                	je     0x41e19f
41e198:	56                   	push   %esi
41e199:	ff 15 dc 62 42 00    	call   *0x4262dc
41e19f:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
41e1a3:	74 09                	je     0x41e1ae
41e1a5:	ff 75 f8             	push   -0x8(%ebp)
41e1a8:	ff 15 dc 62 42 00    	call   *0x4262dc
41e1ae:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
41e1b2:	74 09                	je     0x41e1bd
41e1b4:	ff 75 f4             	push   -0xc(%ebp)
41e1b7:	ff 15 1c 90 42 00    	call   *0x42901c
41e1bd:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
41e1c1:	74 09                	je     0x41e1cc
41e1c3:	ff 75 f0             	push   -0x10(%ebp)