40912c:	46                   	inc    %esi
40912d:	8d 45 fc             	lea    -0x4(%ebp),%eax
409130:	50                   	push   %eax
409131:	8b 43 08             	mov    0x8(%ebx),%eax
409134:	6a 01                	push   $0x1
409136:	8d 0c 36             	lea    (%esi,%esi,1),%ecx
409139:	03 c1                	add    %ecx,%eax
40913b:	50                   	push   %eax
40913c:	6a 01                	push   $0x1
40913e:	ff 15 e8 b1 44 00    	call   *0x44b1e8
409144:	f7 45 fc 04 01 00 00 	testl  $0x104,-0x4(%ebp)
40914b:	75 df                	jne    0x40912c
40914d:	8b 43 08             	mov    0x8(%ebx),%eax
409150:	66 3b 3c 70          	cmp    (%eax,%esi,2),%di
409154:	74 d6                	je     0x40912c
409156:	6a 00                	push   $0x0
409158:	5f                   	pop    %edi
409159:	83 fe 02             	cmp    $0x2,%esi
40915c:	75 23                	jne    0x409181
40915e:	6a 02                	push   $0x2
409160:	68 9c df 44 00       	push   $0x44df9c
409165:	6a 02                	push   $0x2
409167:	50                   	push   %eax
409168:	6a 01                	push   $0x1
40916a:	6a 7f                	push   $0x7f
40916c:	ff 15 28 b1 44 00    	call   *0x44b128
409172:	8b 4d f4             	mov    -0xc(%ebp),%ecx
409175:	3b c1                	cmp    %ecx,%eax
409177:	75 53                	jne    0x4091cc
409179:	89 4b 10             	mov    %ecx,0x10(%ebx)
40917c:	e9 16 02 00 00       	jmp    0x409397
409181:	83 fe 03             	cmp    $0x3,%esi
409184:	75 46                	jne    0x4091cc
409186:	56                   	push   %esi
409187:	68 a4 df 44 00       	push   $0x44dfa4
40918c:	56                   	push   %esi
40918d:	50                   	push   %eax
40918e:	6a 01                	push   $0x1
409190:	6a 7f                	push   $0x7f
409192:	ff 15 28 b1 44 00    	call   *0x44b128
409198:	83 f8 02             	cmp    $0x2,%eax
40919b:	75 08                	jne    0x4091a5
40919d:	89 73 10             	mov    %esi,0x10(%ebx)
4091a0:	e9 f2 01 00 00       	jmp    0x409397
4091a5:	6a 03                	push   $0x3
4091a7:	68 ac df 44 00       	push   $0x44dfac
4091ac:	6a 03                	push   $0x3
4091ae:	ff 73 08             	push   0x8(%ebx)
4091b1:	6a 01                	push   $0x1
4091b3:	6a 7f                	push   $0x7f
4091b5:	ff 15 28 b1 44 00    	call   *0x44b128
4091bb:	83 f8 02             	cmp    $0x2,%eax
4091be:	75 0c                	jne    0x4091cc
4091c0:	c7 43 10 04 00 00 00 	movl   $0x4,0x10(%ebx)
4091c7:	e9 cb 01 00 00       	jmp    0x409397
4091cc:	56                   	push   %esi
4091cd:	ff 73 08             	push   0x8(%ebx)
4091d0:	c7 43 10 11 00 00 00 	movl   $0x11,0x10(%ebx)
4091d7:	e9 43 fd ff ff       	jmp    0x408f1f
4091dc:	6a 5f                	push   $0x5f
4091de:	5f                   	pop    %edi
4091df:	46                   	inc    %esi
4091e0:	8d 45 fc             	lea    -0x4(%ebp),%eax
4091e3:	50                   	push   %eax
4091e4:	6a 01                	push   $0x1
4091e6:	8d 04 71             	lea    (%ecx,%esi,2),%eax
4091e9:	50                   	push   %eax
4091ea:	6a 01                	push   $0x1
4091ec:	ff 15 e8 b1 44 00    	call   *0x44b1e8
4091f2:	f7 45 fc 00 01 00 00 	testl  $0x100,-0x4(%ebp)
4091f9:	75 6d                	jne    0x409268
4091fb:	8b 4b 08             	mov    0x8(%ebx),%ecx
4091fe:	66 3b 3c 71          	cmp    (%ecx,%esi,2),%di
409202:	74 64                	je     0x409268
409204:	f6 45 fc 04          	testb  $0x4,-0x4(%ebp)
409208:	75 d5                	jne    0x4091df
40920a:	8d 45 f0             	lea    -0x10(%ebp),%eax
40920d:	c7 43 10 10 00 00 00 	movl   $0x10,0x10(%ebx)
409214:	50                   	push   %eax
409215:	56                   	push   %esi
409216:	0f 57 c0             	xorps  %xmm0,%xmm0
409219:	51                   	push   %ecx
40921a:	66 0f 13 45 f0       	movlpd %xmm0,-0x10(%ebp)
40921f:	e8 a9 96 ff ff       	call   0x4028cd
409224:	85 c0                	test   %eax,%eax
409226:	79 2c                	jns    0x409254
409228:	be 0d 00 07 80       	mov    $0x8007000d,%esi
40922d:	c7 43 30 01 00 00 00 	movl   $0x1,0x30(%ebx)
409234:	56                   	push   %esi
409235:	68 a1 02 00 00       	push   $0x2a1
40923a:	68 44 dd 44 00       	push   $0x44dd44
40923f:	8b fe                	mov    %esi,%edi
409241:	e8 8d a5 ff ff       	call   0x4037d3
409246:	8b 45 f8             	mov    -0x8(%ebp),%eax
409249:	50                   	push   %eax
40924a:	ff 73 04             	push   0x4(%ebx)
40924d:	68 b0 de 44 00       	push   $0x44deb0
409252:	eb 79                	jmp    0x4092cd
409254:	ff 75 f4             	push   -0xc(%ebp)
409257:	8d 43 18             	lea    0x18(%ebx),%eax
40925a:	ff 75 f0             	push   -0x10(%ebp)
40925d:	50                   	push   %eax
40925e:	e8 4d 70 01 00       	call   0x4202b0
409263:	e9 c0 fc ff ff       	jmp    0x408f28
409268:	be 0d 00 07 80       	mov    $0x8007000d,%esi
40926d:	c7 43 30 01 00 00 00 	movl   $0x1,0x30(%ebx)
409274:	56                   	push   %esi
409275:	68 94 02 00 00       	push   $0x294
40927a:	68 44 dd 44 00       	push   $0x44dd44
40927f:	8b fe                	mov    %esi,%edi
409281:	e8 4d a5 ff ff       	call   0x4037d3
409286:	8b 45 f8             	mov    -0x8(%ebp),%eax
409289:	50                   	push   %eax
40928a:	ff 73 04             	push   0x4(%ebx)
40928d:	68 58 de 44 00       	push   $0x44de58
409292:	eb 39                	jmp    0x4092cd
409294:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
409298:	83 e8 3c             	sub    $0x3c,%eax
40929b:	74 7c                	je     0x409319
40929d:	83 e8 01             	sub    $0x1,%eax
4092a0:	74 6f                	je     0x409311
4092a2:	83 e8 01             	sub    $0x1,%eax
4092a5:	74 34                	je     0x4092db
4092a7:	be 0d 00 07 80       	mov    $0x8007000d,%esi
4092ac:	89 7b 30             	mov    %edi,0x30(%ebx)
4092af:	56                   	push   %esi
4092b0:	68 3f 02 00 00       	push   $0x23f
4092b5:	68 44 dd 44 00       	push   $0x44dd44
4092ba:	8b fe                	mov    %esi,%edi
4092bc:	e8 12 a5 ff ff       	call   0x4037d3
4092c1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4092c4:	50                   	push   %eax
4092c5:	ff 73 04             	push   0x4(%ebx)
4092c8:	68 a0 dd 44 00       	push   $0x44dda0
4092cd:	56                   	push   %esi
4092ce:	e8 5c 6e 03 00       	call   0x44012f
4092d3:	83 c4 10             	add    $0x10,%esp
4092d6:	e9 c8 00 00 00       	jmp    0x4093a3
4092db:	0f b7 41 04          	movzwl 0x4(%ecx),%eax
4092df:	83 e8 3c             	sub    $0x3c,%eax
4092e2:	74 25                	je     0x409309
4092e4:	83 e8 01             	sub    $0x1,%eax
4092e7:	74 18                	je     0x409301
4092e9:	83 e8 01             	sub    $0x1,%eax
4092ec:	74 0b                	je     0x4092f9
4092ee:	c7 02 06 00 03 00    	movl   $0x30006,(%edx)
4092f4:	e9 8c 00 00 00       	jmp    0x409385
4092f9:	c7 02 0d 00 03 00    	movl   $0x3000d,(%edx)
4092ff:	eb 49                	jmp    0x40934a
409301:	c7 02 08 00 03 00    	movl   $0x30008,(%edx)
409307:	eb 41                	jmp    0x40934a
409309:	c7 02 0b 00 03 00    	movl   $0x3000b,(%edx)
40930f:	eb 39                	jmp    0x40934a
409311:	c7 02 09 00 03 00    	movl   $0x30009,(%edx)
409317:	eb 6c                	jmp    0x409385
409319:	0f b7 41 04          	movzwl 0x4(%ecx),%eax
40931d:	83 e8 3c             	sub    $0x3c,%eax
409320:	74 22                	je     0x409344
409322:	83 e8 01             	sub    $0x1,%eax
409325:	74 15                	je     0x40933c
409327:	83 e8 01             	sub    $0x1,%eax
40932a:	74 08                	je     0x409334
40932c:	c7 02 05 00 03 00    	movl   $0x30005,(%edx)
409332:	eb 51                	jmp    0x409385
409334:	c7 02 0a 00 03 00    	movl   $0x3000a,(%edx)
40933a:	eb 0e                	jmp    0x40934a
40933c:	c7 02 07 00 03 00    	movl   $0x30007,(%edx)
409342:	eb 06                	jmp    0x40934a
409344:	c7 02 0c 00 03 00    	movl   $0x3000c,(%edx)
40934a:	6a 03                	push   $0x3
40934c:	5e                   	pop    %esi
40934d:	33 ff                	xor    %edi,%edi
40934f:	eb 46                	jmp    0x409397
409351:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
409355:	83 e8 3c             	sub    $0x3c,%eax
409358:	74 25                	je     0x40937f
40935a:	83 e8 01             	sub    $0x1,%eax
40935d:	74 18                	je     0x409377
40935f:	83 e8 01             	sub    $0x1,%eax
409362:	74 0b                	je     0x40936f
409364:	c7 02 06 00 01 00    	movl   $0x10006,(%edx)
40936a:	e9 2e fc ff ff       	jmp    0x408f9d
40936f:	c7 02 0d 00 01 00    	movl   $0x1000d,(%edx)
409375:	eb 0e                	jmp    0x409385
409377:	c7 02 08 00 01 00    	movl   $0x10008,(%edx)
40937d:	eb 06                	jmp    0x409385
40937f:	c7 02 0b 00 01 00    	movl   $0x1000b,(%edx)
409385:	6a 02                	push   $0x2
409387:	eb c3                	jmp    0x40934c
409389:	c7 02 09 00 01 00    	movl   $0x10009,(%edx)
40938f:	e9 09 fc ff ff       	jmp    0x408f9d
409394:	8b 7d 08             	mov    0x8(%ebp),%edi
409397:	8b 45 f8             	mov    -0x8(%ebp),%eax
40939a:	89 43 14             	mov    %eax,0x14(%ebx)
40939d:	8d 04 36             	lea    (%esi,%esi,1),%eax
4093a0:	01 43 08             	add    %eax,0x8(%ebx)
4093a3:	8b c7                	mov    %edi,%eax
4093a5:	5f                   	pop    %edi
4093a6:	5e                   	pop    %esi
4093a7:	5b                   	pop    %ebx
4093a8:	8b e5                	mov    %ebp,%esp
4093aa:	5d                   	pop    %ebp
4093ab:	c2 04 00             	ret    $0x4
4093ae:	55                   	push   %ebp
4093af:	8b ec                	mov    %esp,%ebp
4093b1:	83 ec 0c             	sub    $0xc,%esp
4093b4:	53                   	push   %ebx
4093b5:	56                   	push   %esi
4093b6:	57                   	push   %edi
4093b7:	8b 7d 08             	mov    0x8(%ebp),%edi
4093ba:	33 c0                	xor    %eax,%eax
4093bc:	8b d8                	mov    %eax,%ebx
4093be:	89 45 f4             	mov    %eax,-0xc(%ebp)
4093c1:	89 45 f8             	mov    %eax,-0x8(%ebp)
4093c4:	89 45 fc             	mov    %eax,-0x4(%ebp)
4093c7:	83 7f 10 04          	cmpl   $0x4,0x10(%edi)
4093cb:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
4093d2:	75 22                	jne    0x4093f6
4093d4:	57                   	push   %edi
4093d5:	e8 6e fa ff ff       	call   0x408e48
4093da:	8b f0                	mov    %eax,%esi
4093dc:	85 f6                	test   %esi,%esi
4093de:	79 0f                	jns    0x4093ef
4093e0:	68 70 db 44 00       	push   $0x44db70
4093e5:	56                   	push   %esi
4093e6:	e8 44 6d 03 00       	call   0x44012f
4093eb:	59                   	pop    %ecx
4093ec:	59                   	pop    %ecx
4093ed:	eb 2f                	jmp    0x40941e
4093ef:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
4093f6:	8d 45 fc             	lea    -0x4(%ebp),%eax
4093f9:	50                   	push   %eax
4093fa:	57                   	push   %edi
4093fb:	e8 12 01 00 00       	call   0x409512
409400:	8b f0                	mov    %eax,%esi
409402:	85 f6                	test   %esi,%esi
409404:	79 07                	jns    0x40940d
409406:	68 d4 dc 44 00       	push   $0x44dcd4
40940b:	eb d8                	jmp    0x4093e5
40940d:	8b 5d fc             	mov    -0x4(%ebp),%ebx
409410:	33 c0                	xor    %eax,%eax
409412:	85 db                	test   %ebx,%ebx
409414:	0f 94 c0             	sete   %al
409417:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
40941b:	0f 45 d8             	cmovne %eax,%ebx
40941e:	85 f6                	test   %esi,%esi
409420:	79 0f                	jns    0x409431
409422:	68 b4 dc 44 00       	push   $0x44dcb4
409427:	56                   	push   %esi
409428:	e8 02 6d 03 00       	call   0x44012f
40942d:	59                   	pop    %ecx
40942e:	59                   	pop    %ecx
40942f:	eb 4d                	jmp    0x40947e
409431:	83 7f 10 03          	cmpl   $0x3,0x10(%edi)
409435:	75 42                	jne    0x409479
409437:	57                   	push   %edi
409438:	e8 0b fa ff ff       	call   0x408e48
40943d:	8b f0                	mov    %eax,%esi
40943f:	85 f6                	test   %esi,%esi
409441:	79 07                	jns    0x40944a
409443:	68 70 db 44 00       	push   $0x44db70
409448:	eb dd                	jmp    0x409427
40944a:	8d 45 f4             	lea    -0xc(%ebp),%eax
40944d:	50                   	push   %eax
40944e:	57                   	push   %edi
40944f:	e8 5a ff ff ff       	call   0x4093ae
409454:	8b f0                	mov    %eax,%esi
409456:	85 f6                	test   %esi,%esi
409458:	79 07                	jns    0x409461
40945a:	68 94 dc 44 00       	push   $0x44dc94
40945f:	eb c6                	jmp    0x409427
409461:	85 db                	test   %ebx,%ebx
409463:	74 06                	je     0x40946b
409465:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
409469:	75 04                	jne    0x40946f
40946b:	83 65 08 00          	andl   $0x0,0x8(%ebp)
40946f:	8b 45 0c             	mov    0xc(%ebp),%eax
409472:	8b 4d 08             	mov    0x8(%ebp),%ecx
409475:	89 08                	mov    %ecx,(%eax)
409477:	eb 05                	jmp    0x40947e
409479:	8b 45 0c             	mov    0xc(%ebp),%eax
40947c:	89 18                	mov    %ebx,(%eax)
40947e:	5f                   	pop    %edi
40947f:	8b c6                	mov    %esi,%eax
409481:	5e                   	pop    %esi
409482:	5b                   	pop    %ebx
409483:	8b e5                	mov    %ebp,%esp
409485:	5d                   	pop    %ebp
409486:	c2 08 00             	ret    $0x8
409489:	55                   	push   %ebp
40948a:	8b ec                	mov    %esp,%ebp
40948c:	51                   	push   %ecx
40948d:	51                   	push   %ecx
40948e:	53                   	push   %ebx
40948f:	56                   	push   %esi
409490:	57                   	push   %edi
409491:	8b 7d 08             	mov    0x8(%ebp),%edi
409494:	8d 45 fc             	lea    -0x4(%ebp),%eax
409497:	50                   	push   %eax
409498:	33 db                	xor    %ebx,%ebx
40949a:	57                   	push   %edi
40949b:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40949e:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4094a1:	e8 08 ff ff ff       	call   0x4093ae
4094a6:	8b f0                	mov    %eax,%esi
4094a8:	85 f6                	test   %esi,%esi
4094aa:	79 0f                	jns    0x4094bb
4094ac:	68 94 dc 44 00       	push   $0x44dc94
4094b1:	56                   	push   %esi
4094b2:	e8 78 6c 03 00       	call   0x44012f
4094b7:	59                   	pop    %ecx
4094b8:	59                   	pop    %ecx
4094b9:	eb 4c                	jmp    0x409507
4094bb:	83 7f 10 02          	cmpl   $0x2,0x10(%edi)
4094bf:	75 3e                	jne    0x4094ff
4094c1:	57                   	push   %edi
4094c2:	e8 81 f9 ff ff       	call   0x408e48
4094c7:	8b f0                	mov    %eax,%esi
4094c9:	85 f6                	test   %esi,%esi
4094cb:	79 07                	jns    0x4094d4
4094cd:	68 70 db 44 00       	push   $0x44db70
4094d2:	eb dd                	jmp    0x4094b1
4094d4:	8d 45 f8             	lea    -0x8(%ebp),%eax
4094d7:	50                   	push   %eax
4094d8:	57                   	push   %edi
4094d9:	e8 ab ff ff ff       	call   0x409489
4094de:	8b f0                	mov    %eax,%esi
4094e0:	85 f6                	test   %esi,%esi
4094e2:	79 07                	jns    0x4094eb
4094e4:	68 8c db 44 00       	push   $0x44db8c
4094e9:	eb c6                	jmp    0x4094b1
4094eb:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
4094ee:	75 05                	jne    0x4094f5
4094f0:	39 5d f8             	cmp    %ebx,-0x8(%ebp)
4094f3:	74 03                	je     0x4094f8
4094f5:	33 db                	xor    %ebx,%ebx
4094f7:	43                   	inc    %ebx
4094f8:	8b 45 0c             	mov    0xc(%ebp),%eax
4094fb:	89 18                	mov    %ebx,(%eax)
4094fd:	eb 08                	jmp    0x409507
4094ff:	8b 4d 0c             	mov    0xc(%ebp),%ecx
409502:	8b 45 fc             	mov    -0x4(%ebp),%eax
409505:	89 01                	mov    %eax,(%ecx)
409507:	5f                   	pop    %edi
409508:	8b c6                	mov    %esi,%eax
40950a:	5e                   	pop    %esi
40950b:	5b                   	pop    %ebx
40950c:	8b e5                	mov    %ebp,%esp
40950e:	5d                   	pop    %ebp
40950f:	c2 08 00             	ret    $0x8