404255:	8b 48 04             	mov    0x4(%eax),%ecx
404258:	85 c9                	test   %ecx,%ecx
40425a:	0f 84 0a 01 00 00    	je     0x40436a
404260:	38 59 08             	cmp    %bl,0x8(%ecx)
404263:	0f 84 01 01 00 00    	je     0x40436a
404269:	8b 50 08             	mov    0x8(%eax),%edx
40426c:	85 d2                	test   %edx,%edx
40426e:	75 08                	jne    0x404278
404270:	39 18                	cmp    %ebx,(%eax)
404272:	0f 8d f2 00 00 00    	jge    0x40436a
404278:	8b 08                	mov    (%eax),%ecx
40427a:	8b 75 0c             	mov    0xc(%ebp),%esi
40427d:	85 c9                	test   %ecx,%ecx
40427f:	78 05                	js     0x404286
404281:	83 c6 0c             	add    $0xc,%esi
404284:	03 f2                	add    %edx,%esi
404286:	89 5d fc             	mov    %ebx,-0x4(%ebp)
404289:	8b 7d 14             	mov    0x14(%ebp),%edi
40428c:	84 c9                	test   %cl,%cl
40428e:	79 20                	jns    0x4042b0
404290:	f6 07 10             	testb  $0x10,(%edi)
404293:	74 1b                	je     0x4042b0
404295:	a1 e4 6c 41 00       	mov    0x416ce4,%eax
40429a:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40429d:	85 c0                	test   %eax,%eax
40429f:	74 0f                	je     0x4042b0
4042a1:	8b c8                	mov    %eax,%ecx
4042a3:	ff 15 18 f1 40 00    	call   *0x40f118
4042a9:	ff 55 e4             	call   *-0x1c(%ebp)
4042ac:	8b c8                	mov    %eax,%ecx
4042ae:	eb 0b                	jmp    0x4042bb
4042b0:	8b 45 08             	mov    0x8(%ebp),%eax
4042b3:	f6 c1 08             	test   $0x8,%cl
4042b6:	74 1c                	je     0x4042d4
4042b8:	8b 48 18             	mov    0x18(%eax),%ecx
4042bb:	85 c9                	test   %ecx,%ecx
4042bd:	0f 84 b9 00 00 00    	je     0x40437c
4042c3:	85 f6                	test   %esi,%esi
4042c5:	0f 84 b1 00 00 00    	je     0x40437c
4042cb:	89 0e                	mov    %ecx,(%esi)
4042cd:	8d 47 08             	lea    0x8(%edi),%eax
4042d0:	50                   	push   %eax
4042d1:	51                   	push   %ecx
4042d2:	eb 37                	jmp    0x40430b
4042d4:	f6 07 01             	testb  $0x1,(%edi)
4042d7:	74 3d                	je     0x404316
4042d9:	83 78 18 00          	cmpl   $0x0,0x18(%eax)
4042dd:	0f 84 99 00 00 00    	je     0x40437c
4042e3:	85 f6                	test   %esi,%esi
4042e5:	0f 84 91 00 00 00    	je     0x40437c
4042eb:	ff 77 14             	push   0x14(%edi)
4042ee:	ff 70 18             	push   0x18(%eax)
4042f1:	56                   	push   %esi
4042f2:	e8 59 11 00 00       	call   0x405450
4042f7:	83 c4 0c             	add    $0xc,%esp
4042fa:	83 7f 14 04          	cmpl   $0x4,0x14(%edi)
4042fe:	75 56                	jne    0x404356
404300:	83 3e 00             	cmpl   $0x0,(%esi)
404303:	74 51                	je     0x404356
404305:	8d 47 08             	lea    0x8(%edi),%eax
404308:	50                   	push   %eax
404309:	ff 36                	push   (%esi)
40430b:	e8 37 f9 ff ff       	call   0x403c47
404310:	59                   	pop    %ecx
404311:	59                   	pop    %ecx
404312:	89 06                	mov    %eax,(%esi)
404314:	eb 40                	jmp    0x404356
404316:	8b 48 18             	mov    0x18(%eax),%ecx
404319:	39 5f 18             	cmp    %ebx,0x18(%edi)
40431c:	75 23                	jne    0x404341
40431e:	85 c9                	test   %ecx,%ecx
404320:	74 5a                	je     0x40437c
404322:	85 f6                	test   %esi,%esi
404324:	74 56                	je     0x40437c
404326:	ff 77 14             	push   0x14(%edi)
404329:	8d 47 08             	lea    0x8(%edi),%eax
40432c:	50                   	push   %eax
40432d:	51                   	push   %ecx
40432e:	e8 14 f9 ff ff       	call   0x403c47
404333:	59                   	pop    %ecx
404334:	59                   	pop    %ecx
404335:	50                   	push   %eax
404336:	56                   	push   %esi
404337:	e8 14 11 00 00       	call   0x405450
40433c:	83 c4 0c             	add    $0xc,%esp
40433f:	eb 15                	jmp    0x404356
404341:	85 c9                	test   %ecx,%ecx
404343:	74 37                	je     0x40437c
404345:	85 f6                	test   %esi,%esi
404347:	74 33                	je     0x40437c
404349:	f6 07 04             	testb  $0x4,(%edi)
40434c:	6a 00                	push   $0x0
40434e:	5b                   	pop    %ebx
40434f:	0f 95 c3             	setne  %bl
404352:	43                   	inc    %ebx
404353:	89 5d e0             	mov    %ebx,-0x20(%ebp)
404356:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40435d:	8b c3                	mov    %ebx,%eax
40435f:	eb 0b                	jmp    0x40436c
404361:	33 c0                	xor    %eax,%eax
404363:	40                   	inc    %eax
404364:	c3                   	ret
404365:	8b 65 e8             	mov    -0x18(%ebp),%esp
404368:	eb 12                	jmp    0x40437c
40436a:	33 c0                	xor    %eax,%eax
40436c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40436f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
404376:	59                   	pop    %ecx
404377:	5f                   	pop    %edi
404378:	5e                   	pop    %esi
404379:	5b                   	pop    %ebx
40437a:	c9                   	leave
40437b:	c3                   	ret
40437c:	e8 1d 2c 00 00       	call   0x406f9e
404381:	cc                   	int3
404382:	6a 08                	push   $0x8
404384:	68 38 49 41 00       	push   $0x414938
404389:	e8 82 f0 ff ff       	call   0x403410
40438e:	8b 55 10             	mov    0x10(%ebp),%edx
404391:	8b 4d 0c             	mov    0xc(%ebp),%ecx
404394:	83 3a 00             	cmpl   $0x0,(%edx)
404397:	7d 04                	jge    0x40439d
404399:	8b f9                	mov    %ecx,%edi
40439b:	eb 06                	jmp    0x4043a3
40439d:	8d 79 0c             	lea    0xc(%ecx),%edi
4043a0:	03 7a 08             	add    0x8(%edx),%edi
4043a3:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4043a7:	8b 75 14             	mov    0x14(%ebp),%esi
4043aa:	56                   	push   %esi
4043ab:	52                   	push   %edx
4043ac:	51                   	push   %ecx
4043ad:	8b 5d 08             	mov    0x8(%ebp),%ebx
4043b0:	53                   	push   %ebx
4043b1:	e8 8e fe ff ff       	call   0x404244
4043b6:	83 c4 10             	add    $0x10,%esp
4043b9:	83 e8 01             	sub    $0x1,%eax
4043bc:	74 21                	je     0x4043df
4043be:	83 e8 01             	sub    $0x1,%eax
4043c1:	75 34                	jne    0x4043f7
4043c3:	8d 46 08             	lea    0x8(%esi),%eax
4043c6:	50                   	push   %eax
4043c7:	ff 73 18             	push   0x18(%ebx)
4043ca:	e8 78 f8 ff ff       	call   0x403c47
4043cf:	59                   	pop    %ecx
4043d0:	59                   	pop    %ecx
4043d1:	6a 01                	push   $0x1
4043d3:	50                   	push   %eax
4043d4:	ff 76 18             	push   0x18(%esi)
4043d7:	57                   	push   %edi
4043d8:	e8 86 0b 00 00       	call   0x404f63
4043dd:	eb 18                	jmp    0x4043f7
4043df:	8d 46 08             	lea    0x8(%esi),%eax
4043e2:	50                   	push   %eax
4043e3:	ff 73 18             	push   0x18(%ebx)
4043e6:	e8 5c f8 ff ff       	call   0x403c47
4043eb:	59                   	pop    %ecx
4043ec:	59                   	pop    %ecx
4043ed:	50                   	push   %eax
4043ee:	ff 76 18             	push   0x18(%esi)
4043f1:	57                   	push   %edi
4043f2:	e8 5c 0b 00 00       	call   0x404f53
4043f7:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4043fe:	8b 4d f0             	mov    -0x10(%ebp),%ecx
404401:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
404408:	59                   	pop    %ecx
404409:	5f                   	pop    %edi
40440a:	5e                   	pop    %esi
40440b:	5b                   	pop    %ebx
40440c:	c9                   	leave
40440d:	c3                   	ret
40440e:	33 c0                	xor    %eax,%eax
404410:	40                   	inc    %eax
404411:	c3                   	ret
404412:	8b 65 e8             	mov    -0x18(%ebp),%esp
404415:	e8 84 2b 00 00       	call   0x406f9e
40441a:	cc                   	int3
40441b:	55                   	push   %ebp
40441c:	8b ec                	mov    %esp,%ebp
40441e:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
404422:	53                   	push   %ebx
404423:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
404426:	56                   	push   %esi
404427:	57                   	push   %edi
404428:	8b 7d 0c             	mov    0xc(%ebp),%edi
40442b:	74 10                	je     0x40443d
40442d:	ff 75 20             	push   0x20(%ebp)
404430:	53                   	push   %ebx
404431:	57                   	push   %edi
404432:	ff 75 08             	push   0x8(%ebp)
404435:	e8 48 ff ff ff       	call   0x404382
40443a:	83 c4 10             	add    $0x10,%esp
40443d:	8b 45 2c             	mov    0x2c(%ebp),%eax
404440:	85 c0                	test   %eax,%eax
404442:	75 02                	jne    0x404446
404444:	8b c7                	mov    %edi,%eax
404446:	ff 75 08             	push   0x8(%ebp)
404449:	50                   	push   %eax
40444a:	e8 09 f5 ff ff       	call   0x403958
40444f:	8b 75 24             	mov    0x24(%ebp),%esi
404452:	ff 36                	push   (%esi)
404454:	ff 75 18             	push   0x18(%ebp)
404457:	ff 75 14             	push   0x14(%ebp)
40445a:	57                   	push   %edi
40445b:	e8 71 09 00 00       	call   0x404dd1
404460:	8b 46 04             	mov    0x4(%esi),%eax
404463:	40                   	inc    %eax
404464:	50                   	push   %eax
404465:	ff 75 18             	push   0x18(%ebp)
404468:	57                   	push   %edi
404469:	e8 cf 0f 00 00       	call   0x40543d
40446e:	68 00 01 00 00       	push   $0x100
404473:	ff 75 28             	push   0x28(%ebp)
404476:	ff 73 0c             	push   0xc(%ebx)
404479:	ff 75 18             	push   0x18(%ebp)
40447c:	ff 75 10             	push   0x10(%ebp)
40447f:	57                   	push   %edi
404480:	ff 75 08             	push   0x8(%ebp)
404483:	e8 d9 06 00 00       	call   0x404b61
404488:	83 c4 38             	add    $0x38,%esp
40448b:	85 c0                	test   %eax,%eax
40448d:	74 07                	je     0x404496
40448f:	57                   	push   %edi
404490:	50                   	push   %eax
404491:	e8 92 f4 ff ff       	call   0x403928
404496:	5f                   	pop    %edi
404497:	5e                   	pop    %esi
404498:	5b                   	pop    %ebx
404499:	5d                   	pop    %ebp
40449a:	c3                   	ret
40449b:	55                   	push   %ebp
40449c:	8b ec                	mov    %esp,%ebp
40449e:	83 ec 64             	sub    $0x64,%esp
4044a1:	53                   	push   %ebx
4044a2:	56                   	push   %esi
4044a3:	57                   	push   %edi
4044a4:	8b 7d 18             	mov    0x18(%ebp),%edi
4044a7:	33 c0                	xor    %eax,%eax
4044a9:	57                   	push   %edi
4044aa:	ff 75 14             	push   0x14(%ebp)
4044ad:	89 45 f0             	mov    %eax,-0x10(%ebp)
4044b0:	ff 75 0c             	push   0xc(%ebp)
4044b3:	88 45 e8             	mov    %al,-0x18(%ebp)
4044b6:	e8 65 0f 00 00       	call   0x405420
4044bb:	8b c8                	mov    %eax,%ecx
4044bd:	83 c4 0c             	add    $0xc,%esp
4044c0:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4044c3:	83 f9 ff             	cmp    $0xffffffff,%ecx
4044c6:	0f 8c 6e 03 00 00    	jl     0x40483a
4044cc:	3b 4f 04             	cmp    0x4(%edi),%ecx
4044cf:	0f 8d 65 03 00 00    	jge    0x40483a
4044d5:	8b 5d 08             	mov    0x8(%ebp),%ebx
4044d8:	81 3b 63 73 6d e0    	cmpl   $0xe06d7363,(%ebx)
4044de:	0f 85 f7 00 00 00    	jne    0x4045db
4044e4:	83 7b 10 03          	cmpl   $0x3,0x10(%ebx)
4044e8:	0f 85 ed 00 00 00    	jne    0x4045db
4044ee:	81 7b 14 20 05 93 19 	cmpl   $0x19930520,0x14(%ebx)
4044f5:	74 16                	je     0x40450d
4044f7:	81 7b 14 21 05 93 19 	cmpl   $0x19930521,0x14(%ebx)
4044fe:	74 0d                	je     0x40450d
404500:	81 7b 14 22 05 93 19 	cmpl   $0x19930522,0x14(%ebx)
404507:	0f 85 ce 00 00 00    	jne    0x4045db
40450d:	33 f6                	xor    %esi,%esi
40450f:	39 73 1c             	cmp    %esi,0x1c(%ebx)
404512:	0f 85 c3 00 00 00    	jne    0x4045db
404518:	e8 39 fc ff ff       	call   0x404156
40451d:	39 70 10             	cmp    %esi,0x10(%eax)
404520:	0f 84 ae 02 00 00    	je     0x4047d4
404526:	e8 2b fc ff ff       	call   0x404156
40452b:	8b 58 10             	mov    0x10(%eax),%ebx
40452e:	e8 23 fc ff ff       	call   0x404156
404533:	c6 45 e8 01          	movb   $0x1,-0x18(%ebp)
404537:	8b 40 14             	mov    0x14(%eax),%eax
40453a:	89 45 fc             	mov    %eax,-0x4(%ebp)
40453d:	85 db                	test   %ebx,%ebx
40453f:	0f 84 f5 02 00 00    	je     0x40483a
404545:	81 3b 63 73 6d e0    	cmpl   $0xe06d7363,(%ebx)
40454b:	75 2a                	jne    0x404577
40454d:	83 7b 10 03          	cmpl   $0x3,0x10(%ebx)
404551:	75 24                	jne    0x404577
404553:	81 7b 14 20 05 93 19 	cmpl   $0x19930520,0x14(%ebx)
40455a:	74 12                	je     0x40456e
40455c:	81 7b 14 21 05 93 19 	cmpl   $0x19930521,0x14(%ebx)
404563:	74 09                	je     0x40456e
404565:	81 7b 14 22 05 93 19 	cmpl   $0x19930522,0x14(%ebx)
40456c:	75 09                	jne    0x404577
40456e:	39 73 1c             	cmp    %esi,0x1c(%ebx)
404571:	0f 84 c3 02 00 00    	je     0x40483a
404577:	e8 da fb ff ff       	call   0x404156
40457c:	39 70 1c             	cmp    %esi,0x1c(%eax)
40457f:	74 62                	je     0x4045e3
404581:	e8 d0 fb ff ff       	call   0x404156
404586:	8b 40 1c             	mov    0x1c(%eax),%eax
404589:	89 45 f4             	mov    %eax,-0xc(%ebp)
40458c:	e8 c5 fb ff ff       	call   0x404156
404591:	ff 75 f4             	push   -0xc(%ebp)
404594:	53                   	push   %ebx
404595:	89 70 1c             	mov    %esi,0x1c(%eax)
404598:	e8 1c 09 00 00       	call   0x404eb9
40459d:	59                   	pop    %ecx
40459e:	59                   	pop    %ecx
40459f:	84 c0                	test   %al,%al
4045a1:	75 40                	jne    0x4045e3
4045a3:	8b 7d f4             	mov    -0xc(%ebp),%edi
4045a6:	39 37                	cmp    %esi,(%edi)
4045a8:	0f 8e 2b 02 00 00    	jle    0x4047d9
4045ae:	8b 47 04             	mov    0x4(%edi),%eax
4045b1:	68 e0 68 41 00       	push   $0x4168e0
4045b6:	8b 4c 06 04          	mov    0x4(%esi,%eax,1),%ecx
4045ba:	e8 83 05 00 00       	call   0x404b42
4045bf:	84 c0                	test   %al,%al
4045c1:	0f 85 17 02 00 00    	jne    0x4047de
4045c7:	8b 45 f0             	mov    -0x10(%ebp),%eax
4045ca:	83 c6 10             	add    $0x10,%esi
4045cd:	40                   	inc    %eax
4045ce:	89 45 f0             	mov    %eax,-0x10(%ebp)
4045d1:	3b 07                	cmp    (%edi),%eax
4045d3:	0f 8d 00 02 00 00    	jge    0x4047d9
4045d9:	eb d3                	jmp    0x4045ae
4045db:	8b 55 10             	mov    0x10(%ebp),%edx
4045de:	89 55 fc             	mov    %edx,-0x4(%ebp)
4045e1:	eb 06                	jmp    0x4045e9
4045e3:	8b 55 fc             	mov    -0x4(%ebp),%edx
4045e6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4045e9:	33 c0                	xor    %eax,%eax
4045eb:	89 7d d0             	mov    %edi,-0x30(%ebp)
4045ee:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4045f1:	81 3b 63 73 6d e0    	cmpl   $0xe06d7363,(%ebx)
4045f7:	0f 85 a6 01 00 00    	jne    0x4047a3
4045fd:	83 7b 10 03          	cmpl   $0x3,0x10(%ebx)
404601:	0f 85 9c 01 00 00    	jne    0x4047a3
404607:	81 7b 14 20 05 93 19 	cmpl   $0x19930520,0x14(%ebx)
40460e:	74 16                	je     0x404626
404610:	81 7b 14 21 05 93 19 	cmpl   $0x19930521,0x14(%ebx)
404617:	74 0d                	je     0x404626
404619:	81 7b 14 22 05 93 19 	cmpl   $0x19930522,0x14(%ebx)
404620:	0f 85 7d 01 00 00    	jne    0x4047a3
404626:	8b 75 24             	mov    0x24(%ebp),%esi
404629:	39 47 0c             	cmp    %eax,0xc(%edi)
40462c:	0f 86 11 01 00 00    	jbe    0x404743
404632:	ff 75 20             	push   0x20(%ebp)
404635:	8d 45 d0             	lea    -0x30(%ebp),%eax
404638:	57                   	push   %edi
404639:	ff 75 14             	push   0x14(%ebp)
40463c:	51                   	push   %ecx
40463d:	50                   	push   %eax
40463e:	8d 45 c0             	lea    -0x40(%ebp),%eax
404641:	50                   	push   %eax
404642:	e8 1e f1 ff ff       	call   0x403765
404647:	8b 55 c4             	mov    -0x3c(%ebp),%edx
40464a:	83 c4 18             	add    $0x18,%esp