411067:	74 03                	je     0x41106c
411069:	41                   	inc    %ecx
41106a:	eb 03                	jmp    0x41106f
41106c:	83 c9 ff             	or     $0xffffffff,%ecx
41106f:	8b 55 e4             	mov    -0x1c(%ebp),%edx
411072:	89 0f                	mov    %ecx,(%edi)
411074:	eb 1a                	jmp    0x411090
411076:	8d 41 01             	lea    0x1(%ecx),%eax
411079:	89 07                	mov    %eax,(%edi)
41107b:	ff 42 08             	incl   0x8(%edx)
41107e:	8b 55 e4             	mov    -0x1c(%ebp),%edx
411081:	6a 20                	push   $0x20
411083:	59                   	pop    %ecx
411084:	8b 02                	mov    (%edx),%eax
411086:	8b 00                	mov    (%eax),%eax
411088:	66 89 08             	mov    %cx,(%eax)
41108b:	8b 02                	mov    (%edx),%eax
41108d:	83 00 02             	addl   $0x2,(%eax)
411090:	8b 0f                	mov    (%edi),%ecx
411092:	83 f9 ff             	cmp    $0xffffffff,%ecx
411095:	74 05                	je     0x41109c
411097:	43                   	inc    %ebx
411098:	3b de                	cmp    %esi,%ebx
41109a:	7c bd                	jl     0x411059
41109c:	b0 01                	mov    $0x1,%al
41109e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4110a1:	5f                   	pop    %edi
4110a2:	5e                   	pop    %esi
4110a3:	33 cd                	xor    %ebp,%ecx
4110a5:	5b                   	pop    %ebx
4110a6:	e8 fc 8b ff ff       	call   0x409ca7
4110ab:	c9                   	leave
4110ac:	c3                   	ret
4110ad:	8b ff                	mov    %edi,%edi
4110af:	55                   	push   %ebp
4110b0:	8b ec                	mov    %esp,%ebp
4110b2:	8b 45 08             	mov    0x8(%ebp),%eax
4110b5:	83 f8 0b             	cmp    $0xb,%eax
4110b8:	77 20                	ja     0x4110da
4110ba:	0f b6 80 f5 10 41 00 	movzbl 0x4110f5(%eax),%eax
4110c1:	ff 24 85 e1 10 41 00 	jmp    *0x4110e1(,%eax,4)
4110c8:	33 c0                	xor    %eax,%eax
4110ca:	40                   	inc    %eax
4110cb:	5d                   	pop    %ebp
4110cc:	c3                   	ret
4110cd:	6a 02                	push   $0x2
4110cf:	58                   	pop    %eax
4110d0:	5d                   	pop    %ebp
4110d1:	c3                   	ret
4110d2:	6a 04                	push   $0x4
4110d4:	eb f9                	jmp    0x4110cf
4110d6:	6a 08                	push   $0x8
4110d8:	eb f5                	jmp    0x4110cf
4110da:	33 c0                	xor    %eax,%eax
4110dc:	5d                   	pop    %ebp
4110dd:	c3                   	ret
4110de:	8d 49 00             	lea    0x0(%ecx),%ecx
4110e1:	d2 10                	rclb   %cl,(%eax)
4110e3:	41                   	inc    %ecx
4110e4:	00 c8                	add    %cl,%al
4110e6:	10 41 00             	adc    %al,0x0(%ecx)
4110e9:	cd 10                	int    $0x10
4110eb:	41                   	inc    %ecx
4110ec:	00 d6                	add    %dl,%dh
4110ee:	10 41 00             	adc    %al,0x0(%ecx)
4110f1:	da 10                	ficoml (%eax)
4110f3:	41                   	inc    %ecx
4110f4:	00 00                	add    %al,(%eax)
4110f6:	01 02                	add    %eax,(%edx)
4110f8:	00 03                	add    %al,(%ebx)
4110fa:	03 00                	add    (%eax),%eax
4110fc:	00 04 00             	add    %al,(%eax,%eax,1)
4110ff:	00 03                	add    %al,(%ebx)
411101:	8b ff                	mov    %edi,%edi
411103:	53                   	push   %ebx
411104:	56                   	push   %esi
411105:	8b f1                	mov    %ecx,%esi
411107:	57                   	push   %edi
411108:	8b 56 10             	mov    0x10(%esi),%edx
41110b:	8d 42 04             	lea    0x4(%edx),%eax
41110e:	89 46 10             	mov    %eax,0x10(%esi)
411111:	8b 3a                	mov    (%edx),%edi
411113:	85 ff                	test   %edi,%edi
411115:	74 33                	je     0x41114a
411117:	8b 5f 04             	mov    0x4(%edi),%ebx
41111a:	85 db                	test   %ebx,%ebx
41111c:	74 2c                	je     0x41114a
41111e:	ff 76 28             	push   0x28(%esi)
411121:	0f b6 46 2d          	movzbl 0x2d(%esi),%eax
411125:	50                   	push   %eax
411126:	ff 76 04             	push   0x4(%esi)
411129:	ff 36                	push   (%esi)
41112b:	e8 26 ca ff ff       	call   0x40db56
411130:	83 c4 10             	add    $0x10,%esp
411133:	89 5e 30             	mov    %ebx,0x30(%esi)
411136:	0f b7 0f             	movzwl (%edi),%ecx
411139:	84 c0                	test   %al,%al
41113b:	8b c1                	mov    %ecx,%eax
41113d:	6a 34                	push   $0x34
41113f:	59                   	pop    %ecx
411140:	74 15                	je     0x411157
411142:	c6 46 38 01          	movb   $0x1,0x38(%esi)
411146:	d1 e8                	shr    $1,%eax
411148:	eb 11                	jmp    0x41115b
41114a:	6a 06                	push   $0x6
41114c:	58                   	pop    %eax
41114d:	6a 34                	push   $0x34
41114f:	c7 46 30 10 25 43 00 	movl   $0x432510,0x30(%esi)
411156:	59                   	pop    %ecx
411157:	c6 46 38 00          	movb   $0x0,0x38(%esi)
41115b:	5f                   	pop    %edi
41115c:	89 04 0e             	mov    %eax,(%esi,%ecx,1)
41115f:	b0 01                	mov    $0x1,%al
411161:	5e                   	pop    %esi
411162:	5b                   	pop    %ebx
411163:	c3                   	ret
411164:	8b ff                	mov    %edi,%edi
411166:	53                   	push   %ebx
411167:	56                   	push   %esi
411168:	8b f1                	mov    %ecx,%esi
41116a:	57                   	push   %edi
41116b:	8b 56 10             	mov    0x10(%esi),%edx
41116e:	8d 42 04             	lea    0x4(%edx),%eax
411171:	89 46 10             	mov    %eax,0x10(%esi)
411174:	8b 3a                	mov    (%edx),%edi
411176:	85 ff                	test   %edi,%edi
411178:	74 33                	je     0x4111ad
41117a:	8b 5f 04             	mov    0x4(%edi),%ebx
41117d:	85 db                	test   %ebx,%ebx
41117f:	74 2c                	je     0x4111ad
411181:	ff 76 28             	push   0x28(%esi)
411184:	0f b7 46 2e          	movzwl 0x2e(%esi),%eax
411188:	50                   	push   %eax
411189:	ff 76 04             	push   0x4(%esi)
41118c:	ff 36                	push   (%esi)
41118e:	e8 f4 c9 ff ff       	call   0x40db87
411193:	83 c4 10             	add    $0x10,%esp
411196:	89 5e 30             	mov    %ebx,0x30(%esi)
411199:	0f b7 0f             	movzwl (%edi),%ecx
41119c:	84 c0                	test   %al,%al
41119e:	8b c1                	mov    %ecx,%eax
4111a0:	6a 34                	push   $0x34
4111a2:	59                   	pop    %ecx
4111a3:	74 15                	je     0x4111ba
4111a5:	c6 46 38 01          	movb   $0x1,0x38(%esi)
4111a9:	d1 e8                	shr    $1,%eax
4111ab:	eb 11                	jmp    0x4111be
4111ad:	6a 06                	push   $0x6
4111af:	58                   	pop    %eax
4111b0:	6a 34                	push   $0x34
4111b2:	c7 46 30 10 25 43 00 	movl   $0x432510,0x30(%esi)
4111b9:	59                   	pop    %ecx
4111ba:	c6 46 38 00          	movb   $0x0,0x38(%esi)
4111be:	5f                   	pop    %edi
4111bf:	89 04 0e             	mov    %eax,(%esi,%ecx,1)
4111c2:	b0 01                	mov    $0x1,%al
4111c4:	5e                   	pop    %esi
4111c5:	5b                   	pop    %ebx
4111c6:	c3                   	ret
4111c7:	8b ff                	mov    %edi,%edi
4111c9:	55                   	push   %ebp
4111ca:	8b ec                	mov    %esp,%ebp
4111cc:	83 ec 14             	sub    $0x14,%esp
4111cf:	33 d2                	xor    %edx,%edx
4111d1:	42                   	inc    %edx
4111d2:	56                   	push   %esi
4111d3:	8b f1                	mov    %ecx,%esi
4111d5:	57                   	push   %edi
4111d6:	83 4e 1c 10          	orl    $0x10,0x1c(%esi)
4111da:	8b 46 24             	mov    0x24(%esi),%eax
4111dd:	85 c0                	test   %eax,%eax
4111df:	79 17                	jns    0x4111f8
4111e1:	8a 46 2d             	mov    0x2d(%esi),%al
4111e4:	3c 61                	cmp    $0x61,%al
4111e6:	74 08                	je     0x4111f0
4111e8:	3c 41                	cmp    $0x41,%al
4111ea:	74 04                	je     0x4111f0
4111ec:	6a 06                	push   $0x6
4111ee:	eb 02                	jmp    0x4111f2
4111f0:	6a 0d                	push   $0xd
4111f2:	58                   	pop    %eax
4111f3:	89 46 24             	mov    %eax,0x24(%esi)
4111f6:	eb 14                	jmp    0x41120c
4111f8:	75 12                	jne    0x41120c
4111fa:	8a 4e 2d             	mov    0x2d(%esi),%cl
4111fd:	80 f9 67             	cmp    $0x67,%cl
411200:	74 05                	je     0x411207
411202:	80 f9 47             	cmp    $0x47,%cl
411205:	75 05                	jne    0x41120c
411207:	89 56 24             	mov    %edx,0x24(%esi)
41120a:	8b c2                	mov    %edx,%eax
41120c:	53                   	push   %ebx
41120d:	ff 76 08             	push   0x8(%esi)
411210:	05 5d 01 00 00       	add    $0x15d,%eax
411215:	8d 7e 3c             	lea    0x3c(%esi),%edi
411218:	50                   	push   %eax
411219:	8b cf                	mov    %edi,%ecx
41121b:	e8 ff c7 ff ff       	call   0x40da1f
411220:	84 c0                	test   %al,%al
411222:	75 12                	jne    0x411236
411224:	8b cf                	mov    %edi,%ecx
411226:	e8 c3 c7 ff ff       	call   0x40d9ee
41122b:	8d 98 a3 fe ff ff    	lea    -0x15d(%eax),%ebx
411231:	89 5e 24             	mov    %ebx,0x24(%esi)
411234:	eb 03                	jmp    0x411239
411236:	8b 5e 24             	mov    0x24(%esi),%ebx
411239:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
41123f:	85 c0                	test   %eax,%eax
411241:	75 02                	jne    0x411245
411243:	8b c7                	mov    %edi,%eax
411245:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
411249:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
41124d:	89 46 30             	mov    %eax,0x30(%esi)
411250:	8b 4e 10             	mov    0x10(%esi),%ecx
411253:	8d 41 08             	lea    0x8(%ecx),%eax
411256:	89 46 10             	mov    %eax,0x10(%esi)
411259:	8b 01                	mov    (%ecx),%eax
41125b:	8b 49 04             	mov    0x4(%ecx),%ecx
41125e:	89 45 ec             	mov    %eax,-0x14(%ebp)
411261:	0f be 46 2d          	movsbl 0x2d(%esi),%eax
411265:	89 4d f0             	mov    %ecx,-0x10(%ebp)
411268:	8b cf                	mov    %edi,%ecx
41126a:	89 45 fc             	mov    %eax,-0x4(%ebp)
41126d:	e8 7c c7 ff ff       	call   0x40d9ee
411272:	8b cf                	mov    %edi,%ecx
411274:	89 45 f8             	mov    %eax,-0x8(%ebp)
411277:	e8 56 d1 ff ff       	call   0x40e3d2
41127c:	8b cf                	mov    %edi,%ecx
41127e:	89 45 f4             	mov    %eax,-0xc(%ebp)
411281:	e8 68 c7 ff ff       	call   0x40d9ee
411286:	8b c8                	mov    %eax,%ecx
411288:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
41128e:	85 c0                	test   %eax,%eax
411290:	74 02                	je     0x411294
411292:	8b f8                	mov    %eax,%edi
411294:	ff 76 08             	push   0x8(%esi)
411297:	8d 45 ec             	lea    -0x14(%ebp),%eax
41129a:	6a 01                	push   $0x1
41129c:	ff 76 04             	push   0x4(%esi)
41129f:	ff 36                	push   (%esi)
4112a1:	53                   	push   %ebx
4112a2:	ff 75 fc             	push   -0x4(%ebp)
4112a5:	ff 75 f8             	push   -0x8(%ebp)
4112a8:	ff 75 f4             	push   -0xc(%ebp)
4112ab:	51                   	push   %ecx
4112ac:	57                   	push   %edi
4112ad:	50                   	push   %eax
4112ae:	e8 37 c1 00 00       	call   0x41d3ea
4112b3:	8b 46 1c             	mov    0x1c(%esi),%eax
4112b6:	83 c4 2c             	add    $0x2c,%esp
4112b9:	c1 e8 05             	shr    $0x5,%eax
4112bc:	5b                   	pop    %ebx
4112bd:	a8 01                	test   $0x1,%al
4112bf:	74 24                	je     0x4112e5
4112c1:	83 7e 24 00          	cmpl   $0x0,0x24(%esi)
4112c5:	75 1e                	jne    0x4112e5
4112c7:	8b 7e 08             	mov    0x8(%esi),%edi
4112ca:	80 7f 14 00          	cmpb   $0x0,0x14(%edi)
4112ce:	75 07                	jne    0x4112d7
4112d0:	8b cf                	mov    %edi,%ecx
4112d2:	e8 e9 05 00 00       	call   0x4118c0
4112d7:	8d 47 0c             	lea    0xc(%edi),%eax
4112da:	50                   	push   %eax
4112db:	ff 76 30             	push   0x30(%esi)
4112de:	e8 ab e3 ff ff       	call   0x40f68e
4112e3:	59                   	pop    %ecx
4112e4:	59                   	pop    %ecx
4112e5:	8a 46 2d             	mov    0x2d(%esi),%al
4112e8:	3c 67                	cmp    $0x67,%al
4112ea:	74 04                	je     0x4112f0
4112ec:	3c 47                	cmp    $0x47,%al
4112ee:	75 28                	jne    0x411318
4112f0:	8b 46 1c             	mov    0x1c(%esi),%eax
4112f3:	c1 e8 05             	shr    $0x5,%eax
4112f6:	a8 01                	test   $0x1,%al
4112f8:	75 1e                	jne    0x411318
4112fa:	8b 7e 08             	mov    0x8(%esi),%edi
4112fd:	80 7f 14 00          	cmpb   $0x0,0x14(%edi)
411301:	75 07                	jne    0x41130a
411303:	8b cf                	mov    %edi,%ecx
411305:	e8 b6 05 00 00       	call   0x4118c0
41130a:	8d 47 0c             	lea    0xc(%edi),%eax
41130d:	50                   	push   %eax
41130e:	ff 76 30             	push   0x30(%esi)
411311:	e8 67 e2 ff ff       	call   0x40f57d
411316:	59                   	pop    %ecx
411317:	59                   	pop    %ecx
411318:	8b 56 30             	mov    0x30(%esi),%edx
41131b:	8a 02                	mov    (%edx),%al
41131d:	3c 2d                	cmp    $0x2d,%al
41131f:	75 0a                	jne    0x41132b
411321:	83 4e 1c 40          	orl    $0x40,0x1c(%esi)
411325:	42                   	inc    %edx
411326:	89 56 30             	mov    %edx,0x30(%esi)
411329:	8a 02                	mov    (%edx),%al
41132b:	3c 69                	cmp    $0x69,%al
41132d:	74 0c                	je     0x41133b
41132f:	3c 49                	cmp    $0x49,%al
411331:	74 08                	je     0x41133b
411333:	3c 6e                	cmp    $0x6e,%al
411335:	74 04                	je     0x41133b
411337:	3c 4e                	cmp    $0x4e,%al
411339:	75 08                	jne    0x411343
41133b:	83 66 1c f7          	andl   $0xfffffff7,0x1c(%esi)
41133f:	c6 46 2d 73          	movb   $0x73,0x2d(%esi)
411343:	8d 7a 01             	lea    0x1(%edx),%edi
411346:	8a 0a                	mov    (%edx),%cl
411348:	42                   	inc    %edx
411349:	84 c9                	test   %cl,%cl
41134b:	75 f9                	jne    0x411346
41134d:	2b d7                	sub    %edi,%edx
41134f:	b0 01                	mov    $0x1,%al
411351:	5f                   	pop    %edi
411352:	89 56 34             	mov    %edx,0x34(%esi)
411355:	5e                   	pop    %esi
411356:	c9                   	leave
411357:	c3                   	ret
411358:	8b ff                	mov    %edi,%edi
41135a:	55                   	push   %ebp
41135b:	8b ec                	mov    %esp,%ebp
41135d:	83 ec 14             	sub    $0x14,%esp
411360:	33 d2                	xor    %edx,%edx
411362:	42                   	inc    %edx
411363:	53                   	push   %ebx
411364:	56                   	push   %esi
411365:	57                   	push   %edi
411366:	8b f1                	mov    %ecx,%esi
411368:	6a 67                	push   $0x67
41136a:	5b                   	pop    %ebx
41136b:	6a 47                	push   $0x47
41136d:	83 4e 1c 10          	orl    $0x10,0x1c(%esi)
411371:	8b 46 24             	mov    0x24(%esi),%eax
411374:	5f                   	pop    %edi
411375:	85 c0                	test   %eax,%eax
411377:	79 1a                	jns    0x411393
411379:	0f b7 46 2e          	movzwl 0x2e(%esi),%eax
41137d:	83 f8 61             	cmp    $0x61,%eax
411380:	74 09                	je     0x41138b
411382:	83 f8 41             	cmp    $0x41,%eax
411385:	74 04                	je     0x41138b
411387:	6a 06                	push   $0x6
411389:	eb 02                	jmp    0x41138d
41138b:	6a 0d                	push   $0xd
41138d:	58                   	pop    %eax
41138e:	89 46 24             	mov    %eax,0x24(%esi)
411391:	eb 15                	jmp    0x4113a8
411393:	75 13                	jne    0x4113a8
411395:	0f b7 4e 2e          	movzwl 0x2e(%esi),%ecx
411399:	66 3b cb             	cmp    %bx,%cx
41139c:	74 05                	je     0x4113a3