41637c:	6a 01                	push   $0x1
41637e:	6a 7f                	push   $0x7f
416380:	ff 15 28 b1 44 00    	call   *0x44b128
416386:	83 f8 02             	cmp    $0x2,%eax
416389:	75 4f                	jne    0x4163da
41638b:	68 4c 4a 45 00       	push   $0x454a4c
416390:	ff 15 f8 b0 44 00    	call   *0x44b0f8
416396:	8b 0c 9e             	mov    (%esi,%ebx,4),%ecx
416399:	03 c0                	add    %eax,%eax
41639b:	6a 3d                	push   $0x3d
41639d:	5a                   	pop    %edx
41639e:	66 3b 54 01 02       	cmp    0x2(%ecx,%eax,1),%dx
4163a3:	0f 85 4f 03 00 00    	jne    0x4166f8
4163a9:	83 c0 04             	add    $0x4,%eax
4163ac:	03 c1                	add    %ecx,%eax
4163ae:	33 c9                	xor    %ecx,%ecx
4163b0:	66 3b 08             	cmp    (%eax),%cx
4163b3:	0f 84 3f 03 00 00    	je     0x4166f8
4163b9:	51                   	push   %ecx
4163ba:	50                   	push   %eax
4163bb:	ff 75 48             	push   0x48(%ebp)
4163be:	e8 e2 bd fe ff       	call   0x4021a5
4163c3:	8b f8                	mov    %eax,%edi
4163c5:	89 7d fc             	mov    %edi,-0x4(%ebp)
4163c8:	85 ff                	test   %edi,%edi
4163ca:	0f 89 41 01 00 00    	jns    0x416511
4163d0:	68 f8 5c 45 00       	push   $0x455cf8
4163d5:	e9 42 03 00 00       	jmp    0x41671c
4163da:	68 60 b8 44 00       	push   $0x44b860
4163df:	ff 15 f8 b0 44 00    	call   *0x44b0f8
4163e5:	50                   	push   %eax
4163e6:	b8 60 b8 44 00       	mov    $0x44b860,%eax
4163eb:	50                   	push   %eax
4163ec:	50                   	push   %eax
4163ed:	ff 15 f8 b0 44 00    	call   *0x44b0f8
4163f3:	50                   	push   %eax
4163f4:	8b 04 9e             	mov    (%esi,%ebx,4),%eax
4163f7:	83 c0 02             	add    $0x2,%eax
4163fa:	50                   	push   %eax
4163fb:	6a 01                	push   $0x1
4163fd:	6a 7f                	push   $0x7f
4163ff:	ff 15 28 b1 44 00    	call   *0x44b128
416405:	83 f8 02             	cmp    $0x2,%eax
416408:	0f 84 03 01 00 00    	je     0x416511
41640e:	68 94 b8 44 00       	push   $0x44b894
416413:	ff 15 f8 b0 44 00    	call   *0x44b0f8
416419:	50                   	push   %eax
41641a:	b8 94 b8 44 00       	mov    $0x44b894,%eax
41641f:	50                   	push   %eax
416420:	50                   	push   %eax
416421:	ff 15 f8 b0 44 00    	call   *0x44b0f8
416427:	50                   	push   %eax
416428:	8b 04 9e             	mov    (%esi,%ebx,4),%eax
41642b:	83 c0 02             	add    $0x2,%eax
41642e:	50                   	push   %eax
41642f:	6a 01                	push   $0x1
416431:	6a 7f                	push   $0x7f
416433:	ff 15 28 b1 44 00    	call   *0x44b128
416439:	83 f8 02             	cmp    $0x2,%eax
41643c:	0f 84 cf 00 00 00    	je     0x416511
416442:	8b 04 9e             	mov    (%esi,%ebx,4),%eax
416445:	83 c0 02             	add    $0x2,%eax
416448:	50                   	push   %eax
416449:	ff 15 f8 b0 44 00    	call   *0x44b0f8
41644f:	68 6c 4a 45 00       	push   $0x454a6c
416454:	8b f0                	mov    %eax,%esi
416456:	ff 15 f8 b0 44 00    	call   *0x44b0f8
41645c:	3b f0                	cmp    %eax,%esi
41645e:	7c 42                	jl     0x4164a2
416460:	8b 35 f8 b0 44 00    	mov    0x44b0f8,%esi
416466:	68 6c 4a 45 00       	push   $0x454a6c
41646b:	ff d6                	call   *%esi
41646d:	50                   	push   %eax
41646e:	b8 6c 4a 45 00       	mov    $0x454a6c,%eax
416473:	50                   	push   %eax
416474:	50                   	push   %eax
416475:	ff d6                	call   *%esi
416477:	8b 75 0c             	mov    0xc(%ebp),%esi
41647a:	50                   	push   %eax
41647b:	8b 04 9e             	mov    (%esi,%ebx,4),%eax
41647e:	83 c0 02             	add    $0x2,%eax
416481:	50                   	push   %eax
416482:	6a 01                	push   $0x1
416484:	6a 7f                	push   $0x7f
416486:	ff 15 28 b1 44 00    	call   *0x44b128
41648c:	83 f8 02             	cmp    $0x2,%eax
41648f:	75 14                	jne    0x4164a5
416491:	8b 04 9e             	mov    (%esi,%ebx,4),%eax
416494:	83 c0 02             	add    $0x2,%eax
416497:	50                   	push   %eax
416498:	68 02 00 00 a0       	push   $0xa0000002
41649d:	e9 16 fd ff ff       	jmp    0x4161b8
4164a2:	8b 75 0c             	mov    0xc(%ebp),%esi
4164a5:	ff 34 9e             	push   (%esi,%ebx,4)
4164a8:	8b 45 10             	mov    0x10(%ebp),%eax
4164ab:	83 c0 0c             	add    $0xc,%eax
4164ae:	50                   	push   %eax
4164af:	e8 d9 c6 fe ff       	call   0x402b8d
4164b4:	eb 5b                	jmp    0x416511
4164b6:	8b 4d 10             	mov    0x10(%ebp),%ecx
4164b9:	83 39 00             	cmpl   $0x0,(%ecx)
4164bc:	75 53                	jne    0x416511
4164be:	c7 01 05 00 00 00    	movl   $0x5,(%ecx)
4164c4:	eb 4b                	jmp    0x416511
4164c6:	8b 4d 10             	mov    0x10(%ebp),%ecx
4164c9:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
4164cd:	c7 41 04 02 00 00 00 	movl   $0x2,0x4(%ecx)
4164d4:	75 3b                	jne    0x416511
4164d6:	c7 41 08 03 00 00 00 	movl   $0x3,0x8(%ecx)
4164dd:	eb 32                	jmp    0x416511
4164df:	8b 45 10             	mov    0x10(%ebp),%eax
4164e2:	e9 0e fa ff ff       	jmp    0x415ef5
4164e7:	8b 45 38             	mov    0x38(%ebp),%eax
4164ea:	83 20 fe             	andl   $0xfffffffe,(%eax)
4164ed:	43                   	inc    %ebx
4164ee:	3b 5d 08             	cmp    0x8(%ebp),%ebx
4164f1:	0f 8d 28 02 00 00    	jge    0x41671f
4164f7:	6a 00                	push   $0x0
4164f9:	ff 34 9e             	push   (%esi,%ebx,4)
4164fc:	ff 75 3c             	push   0x3c(%ebp)
4164ff:	e8 a1 bc fe ff       	call   0x4021a5
416504:	8b f8                	mov    %eax,%edi
416506:	89 7d fc             	mov    %edi,-0x4(%ebp)
416509:	85 ff                	test   %edi,%edi
41650b:	0f 88 06 02 00 00    	js     0x416717
416511:	8b 45 f4             	mov    -0xc(%ebp),%eax
416514:	85 c0                	test   %eax,%eax
416516:	74 0b                	je     0x416523
416518:	50                   	push   %eax
416519:	ff 75 4c             	push   0x4c(%ebp)
41651c:	e8 6c c6 fe ff       	call   0x402b8d
416521:	eb 1b                	jmp    0x41653e
416523:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
416526:	7f 16                	jg     0x41653e
416528:	8b 7d e4             	mov    -0x1c(%ebp),%edi
41652b:	ff 34 be             	push   (%esi,%edi,4)
41652e:	ff 75 4c             	push   0x4c(%ebp)
416531:	e8 57 c6 fe ff       	call   0x402b8d
416536:	47                   	inc    %edi
416537:	3b fb                	cmp    %ebx,%edi
416539:	7e f0                	jle    0x41652b
41653b:	8b 7d fc             	mov    -0x4(%ebp),%edi
41653e:	43                   	inc    %ebx
41653f:	33 f6                	xor    %esi,%esi
416541:	3b 5d 08             	cmp    0x8(%ebp),%ebx
416544:	0f 8c 1d f5 ff ff    	jl     0x415a67
41654a:	8b 45 20             	mov    0x20(%ebp),%eax
41654d:	83 38 03             	cmpl   $0x3,(%eax)
416550:	8b 45 10             	mov    0x10(%ebp),%eax
416553:	75 07                	jne    0x41655c
416555:	c7 40 04 01 00 00 00 	movl   $0x1,0x4(%eax)
41655c:	39 30                	cmp    %esi,(%eax)
41655e:	75 06                	jne    0x416566
416560:	c7 00 05 00 00 00    	movl   $0x5,(%eax)
416566:	39 70 04             	cmp    %esi,0x4(%eax)
416569:	75 07                	jne    0x416572
41656b:	c7 40 04 04 00 00 00 	movl   $0x4,0x4(%eax)
416572:	39 70 08             	cmp    %esi,0x8(%eax)
416575:	75 07                	jne    0x41657e
416577:	c7 40 08 02 00 00 00 	movl   $0x2,0x8(%eax)
41657e:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
416582:	74 08                	je     0x41658c
416584:	ff 75 f8             	push   -0x8(%ebp)
416587:	e8 63 ef 02 00       	call   0x4454ef
41658c:	8b 45 f4             	mov    -0xc(%ebp),%eax
41658f:	85 c0                	test   %eax,%eax
416591:	74 06                	je     0x416599
416593:	50                   	push   %eax
416594:	e8 56 ef 02 00       	call   0x4454ef
416599:	8b c7                	mov    %edi,%eax
41659b:	5f                   	pop    %edi
41659c:	5e                   	pop    %esi
41659d:	5b                   	pop    %ebx
41659e:	8b e5                	mov    %ebp,%esp
4165a0:	5d                   	pop    %ebp
4165a1:	c2 48 00             	ret    $0x48
4165a4:	68 24 5d 45 00       	push   $0x455d24
4165a9:	e9 6e 01 00 00       	jmp    0x41671c
4165ae:	68 d8 d5 44 00       	push   $0x44d5d8
4165b3:	e9 64 01 00 00       	jmp    0x41671c
4165b8:	be 57 00 07 80       	mov    $0x80070057,%esi
4165bd:	56                   	push   %esi
4165be:	68 a9 04 00 00       	push   $0x4a9
4165c3:	68 9c 4d 45 00       	push   $0x454d9c
4165c8:	e8 06 d2 fe ff       	call   0x4037d3
4165cd:	68 98 5a 45 00       	push   $0x455a98
4165d2:	e9 62 01 00 00       	jmp    0x416739
4165d7:	be 57 00 07 80       	mov    $0x80070057,%esi
4165dc:	56                   	push   %esi
4165dd:	68 b4 04 00 00       	push   $0x4b4
4165e2:	68 9c 4d 45 00       	push   $0x454d9c
4165e7:	e8 e7 d1 fe ff       	call   0x4037d3
4165ec:	68 e8 5a 45 00       	push   $0x455ae8
4165f1:	e9 43 01 00 00       	jmp    0x416739
4165f6:	68 70 5b 45 00       	push   $0x455b70
4165fb:	e9 1c 01 00 00       	jmp    0x41671c
416600:	be 57 00 07 80       	mov    $0x80070057,%esi
416605:	56                   	push   %esi
416606:	68 c5 04 00 00       	push   $0x4c5
41660b:	68 9c 4d 45 00       	push   $0x454d9c
416610:	e8 be d1 fe ff       	call   0x4037d3
416615:	68 4c 5b 45 00       	push   $0x455b4c
41661a:	e9 1a 01 00 00       	jmp    0x416739
41661f:	68 0c 5c 45 00       	push   $0x455c0c
416624:	e9 f3 00 00 00       	jmp    0x41671c
416629:	be 57 00 07 80       	mov    $0x80070057,%esi
41662e:	56                   	push   %esi
41662f:	68 d8 04 00 00       	push   $0x4d8
416634:	68 9c 4d 45 00       	push   $0x454d9c
416639:	e8 95 d1 fe ff       	call   0x4037d3
41663e:	68 d8 5b 45 00       	push   $0x455bd8
416643:	e9 f1 00 00 00       	jmp    0x416739
416648:	be 57 00 07 80       	mov    $0x80070057,%esi
41664d:	56                   	push   %esi
41664e:	68 d3 04 00 00       	push   $0x4d3
416653:	68 9c 4d 45 00       	push   $0x454d9c
416658:	e8 76 d1 fe ff       	call   0x4037d3
41665d:	68 98 5b 45 00       	push   $0x455b98
416662:	e9 d2 00 00 00       	jmp    0x416739
416667:	be 57 00 07 80       	mov    $0x80070057,%esi
41666c:	56                   	push   %esi
41666d:	68 ef 04 00 00       	push   $0x4ef
416672:	eb c0                	jmp    0x416634
416674:	be 57 00 07 80       	mov    $0x80070057,%esi
416679:	56                   	push   %esi
41667a:	68 ea 04 00 00       	push   $0x4ea
41667f:	68 9c 4d 45 00       	push   $0x454d9c
416684:	e8 4a d1 fe ff       	call   0x4037d3
416689:	68 40 b8 44 00       	push   $0x44b840
41668e:	68 f4 ba 44 00       	push   $0x44baf4
416693:	56                   	push   %esi
416694:	8b fe                	mov    %esi,%edi
416696:	e8 94 9a 02 00       	call   0x44012f
41669b:	83 c4 0c             	add    $0xc,%esp
41669e:	e9 db fe ff ff       	jmp    0x41657e
4166a3:	be 57 00 07 80       	mov    $0x80070057,%esi
4166a8:	56                   	push   %esi
4166a9:	68 0a 05 00 00       	push   $0x50a
4166ae:	eb 84                	jmp    0x416634
4166b0:	be 57 00 07 80       	mov    $0x80070057,%esi
4166b5:	56                   	push   %esi
4166b6:	68 fb 04 00 00       	push   $0x4fb
4166bb:	68 9c 4d 45 00       	push   $0x454d9c
4166c0:	e8 0e d1 fe ff       	call   0x4037d3
4166c5:	68 58 5c 45 00       	push   $0x455c58
4166ca:	eb 6d                	jmp    0x416739
4166cc:	be 57 00 07 80       	mov    $0x80070057,%esi
4166d1:	56                   	push   %esi
4166d2:	68 3e 05 00 00       	push   $0x53e
4166d7:	e9 58 ff ff ff       	jmp    0x416634
4166dc:	be 57 00 07 80       	mov    $0x80070057,%esi
4166e1:	56                   	push   %esi
4166e2:	68 49 05 00 00       	push   $0x549
4166e7:	68 9c 4d 45 00       	push   $0x454d9c
4166ec:	e8 e2 d0 fe ff       	call   0x4037d3
4166f1:	68 1c 4a 45 00       	push   $0x454a1c
4166f6:	eb 96                	jmp    0x41668e
4166f8:	be 57 00 07 80       	mov    $0x80070057,%esi
4166fd:	56                   	push   %esi
4166fe:	68 55 05 00 00       	push   $0x555
416703:	68 9c 4d 45 00       	push   $0x454d9c
416708:	e8 c6 d0 fe ff       	call   0x4037d3
41670d:	68 4c 4a 45 00       	push   $0x454a4c
416712:	e9 77 ff ff ff       	jmp    0x41668e
416717:	68 d8 58 45 00       	push   $0x4558d8
41671c:	57                   	push   %edi
41671d:	eb 1d                	jmp    0x41673c
41671f:	be 57 00 07 80       	mov    $0x80070057,%esi
416724:	56                   	push   %esi
416725:	68 39 04 00 00       	push   $0x439
41672a:	68 9c 4d 45 00       	push   $0x454d9c
41672f:	e8 9f d0 fe ff       	call   0x4037d3
416734:	68 b8 58 45 00       	push   $0x4558b8
416739:	8b fe                	mov    %esi,%edi
41673b:	56                   	push   %esi
41673c:	e8 ee 99 02 00       	call   0x44012f
416741:	59                   	pop    %ecx
416742:	59                   	pop    %ecx
416743:	e9 36 fe ff ff       	jmp    0x41657e
416748:	55                   	push   %ebp
416749:	8b ec                	mov    %esp,%ebp
41674b:	53                   	push   %ebx
41674c:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41674f:	56                   	push   %esi
416750:	57                   	push   %edi
416751:	8b 7d 08             	mov    0x8(%ebp),%edi
416754:	6a 00                	push   $0x0
416756:	ff 37                	push   (%edi)
416758:	53                   	push   %ebx
416759:	e8 47 ba fe ff       	call   0x4021a5
41675e:	8b f0                	mov    %eax,%esi
416760:	85 f6                	test   %esi,%esi
416762:	79 07                	jns    0x41676b
416764:	68 8c 5d 45 00       	push   $0x455d8c
416769:	eb 34                	jmp    0x41679f
41676b:	6a 00                	push   $0x0
41676d:	ff 77 04             	push   0x4(%edi)
416770:	8d 43 04             	lea    0x4(%ebx),%eax
416773:	50                   	push   %eax
416774:	e8 2c ba fe ff       	call   0x4021a5
416779:	8b f0                	mov    %eax,%esi
41677b:	85 f6                	test   %esi,%esi
41677d:	79 07                	jns    0x416786
41677f:	68 c0 5d 45 00       	push   $0x455dc0
416784:	eb 19                	jmp    0x41679f
416786:	8d 43 08             	lea    0x8(%ebx),%eax
416789:	50                   	push   %eax
41678a:	6a 00                	push   $0x0
41678c:	ff 77 08             	push   0x8(%edi)
41678f:	e8 48 c2 fe ff       	call   0x4029dc
416794:	8b f0                	mov    %eax,%esi
416796:	85 f6                	test   %esi,%esi
416798:	79 0d                	jns    0x4167a7
41679a:	68 f4 5d 45 00       	push   $0x455df4
41679f:	56                   	push   %esi
4167a0:	e8 8a 99 02 00       	call   0x44012f
4167a5:	59                   	pop    %ecx
4167a6:	59                   	pop    %ecx
4167a7:	5f                   	pop    %edi
4167a8:	8b c6                	mov    %esi,%eax
4167aa:	5e                   	pop    %esi
4167ab:	5b                   	pop    %ebx
4167ac:	5d                   	pop    %ebp
4167ad:	c2 08 00             	ret    $0x8
4167b0:	55                   	push   %ebp
4167b1:	8b ec                	mov    %esp,%ebp
4167b3:	51                   	push   %ecx
4167b4:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4167b8:	6a ff                	push   $0xffffffff
4167ba:	ff 75 08             	push   0x8(%ebp)
4167bd:	ff 15 10 b2 44 00    	call   *0x44b210
4167c3:	85 c0                	test   %eax,%eax
4167c5:	74 38                	je     0x4167ff
4167c7:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4167cd:	0f b7 c8             	movzwl %ax,%ecx
4167d0:	81 c9 00 00 07 80    	or     $0x80070000,%ecx
4167d6:	85 c0                	test   %eax,%eax
4167d8:	0f 4e c8             	cmovle %eax,%ecx
4167db:	b8 05 40 00 80       	mov    $0x80004005,%eax
4167e0:	85 c9                	test   %ecx,%ecx
4167e2:	0f 49 c8             	cmovns %eax,%ecx
4167e5:	51                   	push   %ecx
4167e6:	68 2b 06 00 00       	push   $0x62b
4167eb:	68 9c 4d 45 00       	push   $0x454d9c
4167f0:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4167f3:	e8 db cf fe ff       	call   0x4037d3
4167f8:	68 a0 5e 45 00       	push   $0x455ea0
4167fd:	eb 47                	jmp    0x416846
4167ff:	8d 45 fc             	lea    -0x4(%ebp),%eax
416802:	50                   	push   %eax