43e2e5:	68 8a 13 00 00       	push   $0x138a
43e2ea:	ff 75 08             	push   0x8(%ebp)
43e2ed:	e8 c8 1a 02 00       	call   0x45fdba
43e2f2:	83 c8 ff             	or     $0xffffffff,%eax
43e2f5:	e9 88 80 fc ff       	jmp    0x406382
43e2fa:	47                   	inc    %edi
43e2fb:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43e2fe:	6a 53                	push   $0x53
43e300:	89 7d f8             	mov    %edi,-0x8(%ebp)
43e303:	e8 0a 7c fc ff       	call   0x405f12
43e308:	e9 a6 82 fc ff       	jmp    0x4065b3
43e30d:	47                   	inc    %edi
43e30e:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43e311:	6a 54                	push   $0x54
43e313:	89 7d f8             	mov    %edi,-0x8(%ebp)
43e316:	e8 f7 7b fc ff       	call   0x405f12
43e31b:	e9 93 82 fc ff       	jmp    0x4065b3
43e320:	6a 51                	push   $0x51
43e322:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43e325:	e8 e8 7b fc ff       	call   0x405f12
43e32a:	8b 4d 10             	mov    0x10(%ebp),%ecx
43e32d:	8d 45 e8             	lea    -0x18(%ebp),%eax
43e330:	50                   	push   %eax
43e331:	e8 39 93 fc ff       	call   0x40766f
43e336:	47                   	inc    %edi
43e337:	89 7d f8             	mov    %edi,-0x8(%ebp)
43e33a:	e9 80 82 fc ff       	jmp    0x4065bf
43e33f:	6a 57                	push   $0x57
43e341:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43e344:	e8 c9 7b fc ff       	call   0x405f12
43e349:	8b 4d 10             	mov    0x10(%ebp),%ecx
43e34c:	8d 45 e8             	lea    -0x18(%ebp),%eax
43e34f:	50                   	push   %eax
43e350:	e8 1a 93 fc ff       	call   0x40766f
43e355:	47                   	inc    %edi
43e356:	89 7d f8             	mov    %edi,-0x8(%ebp)
43e359:	e9 61 82 fc ff       	jmp    0x4065bf
43e35e:	6a 58                	push   $0x58
43e360:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43e363:	e8 aa 7b fc ff       	call   0x405f12
43e368:	8b 4d 10             	mov    0x10(%ebp),%ecx
43e36b:	8d 45 e8             	lea    -0x18(%ebp),%eax
43e36e:	50                   	push   %eax
43e36f:	e8 fb 92 fc ff       	call   0x40766f
43e374:	47                   	inc    %edi
43e375:	89 7d f8             	mov    %edi,-0x8(%ebp)
43e378:	e9 42 82 fc ff       	jmp    0x4065bf
43e37d:	85 ff                	test   %edi,%edi
43e37f:	0f 85 9a 00 00 00    	jne    0x43e41f
43e385:	66 39 7b 02          	cmp    %di,0x2(%ebx)
43e389:	0f 85 90 00 00 00    	jne    0x43e41f
43e38f:	8b 45 08             	mov    0x8(%ebp),%eax
43e392:	3b 05 a0 72 4c 00    	cmp    0x4c72a0,%eax
43e398:	0f 8c 81 00 00 00    	jl     0x43e41f
43e39e:	bf 01 00 00 00       	mov    $0x1,%edi
43e3a3:	89 7d f8             	mov    %edi,-0x8(%ebp)
43e3a6:	e9 14 82 fc ff       	jmp    0x4065bf
43e3ab:	6a 50                	push   $0x50
43e3ad:	e8 60 7b fc ff       	call   0x405f12
43e3b2:	47                   	inc    %edi
43e3b3:	89 7d f8             	mov    %edi,-0x8(%ebp)
43e3b6:	e9 f8 81 fc ff       	jmp    0x4065b3
43e3bb:	48                   	dec    %eax
43e3bc:	89 01                	mov    %eax,(%ecx)
43e3be:	8d 4d d8             	lea    -0x28(%ebp),%ecx
43e3c1:	e8 c3 9d fc ff       	call   0x408189
43e3c6:	8b 45 dc             	mov    -0x24(%ebp),%eax
43e3c9:	83 c0 02             	add    $0x2,%eax
43e3cc:	50                   	push   %eax
43e3cd:	e8 9e 9d fc ff       	call   0x408170
43e3d2:	33 c9                	xor    %ecx,%ecx
43e3d4:	89 45 e0             	mov    %eax,-0x20(%ebp)
43e3d7:	ba 02 00 00 00       	mov    $0x2,%edx
43e3dc:	f7 e2                	mul    %edx
43e3de:	0f 90 c1             	seto   %cl
43e3e1:	f7 d9                	neg    %ecx
43e3e3:	0b c8                	or     %eax,%ecx
43e3e5:	51                   	push   %ecx
43e3e6:	e8 0b 2c fe ff       	call   0x420ff6
43e3eb:	8b d0                	mov    %eax,%edx
43e3ed:	83 c4 04             	add    $0x4,%esp
43e3f0:	8b 45 dc             	mov    -0x24(%ebp),%eax
43e3f3:	89 55 0c             	mov    %edx,0xc(%ebp)
43e3f6:	8d 0c 45 02 00 00 00 	lea    0x2(,%eax,2),%ecx
43e3fd:	51                   	push   %ecx
43e3fe:	ff 75 d8             	push   -0x28(%ebp)
43e401:	52                   	push   %edx
43e402:	e8 79 2c fe ff       	call   0x421080
43e407:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43e40a:	83 c4 0c             	add    $0xc,%esp
43e40d:	89 4d d8             	mov    %ecx,-0x28(%ebp)
43e410:	e9 45 81 fc ff       	jmp    0x40655a
43e415:	ff 75 f8             	push   -0x8(%ebp)
43e418:	68 8c 13 00 00       	push   $0x138c
43e41d:	eb 2b                	jmp    0x43e44a
43e41f:	57                   	push   %edi
43e420:	68 88 13 00 00       	push   $0x1388
43e425:	ff 75 08             	push   0x8(%ebp)
43e428:	e8 8d 19 02 00       	call   0x45fdba
43e42d:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43e430:	6a 7f                	push   $0x7f
43e432:	e8 db 7a fc ff       	call   0x405f12
43e437:	8b 4d 10             	mov    0x10(%ebp),%ecx
43e43a:	8d 45 e8             	lea    -0x18(%ebp),%eax
43e43d:	50                   	push   %eax
43e43e:	e8 2c 92 fc ff       	call   0x40766f
43e443:	eb 0d                	jmp    0x43e452
43e445:	68 8b 13 00 00       	push   $0x138b
43e44a:	ff 75 08             	push   0x8(%ebp)
43e44d:	e8 68 19 02 00       	call   0x45fdba
43e452:	83 ce ff             	or     $0xffffffff,%esi
43e455:	e9 8c 81 fc ff       	jmp    0x4065e6
43e45a:	8d 45 0c             	lea    0xc(%ebp),%eax
43e45d:	50                   	push   %eax
43e45e:	8d 45 10             	lea    0x10(%ebp),%eax
43e461:	50                   	push   %eax
43e462:	68 80 a0 4b 00       	push   $0x4ba080
43e467:	8d 4d 98             	lea    -0x68(%ebp),%ecx
43e46a:	e8 76 b3 02 00       	call   0x4697e5
43e46f:	85 c0                	test   %eax,%eax
43e471:	74 1d                	je     0x43e490
43e473:	8d 4d 98             	lea    -0x68(%ebp),%ecx
43e476:	e8 2f 6b fc ff       	call   0x404faa
43e47b:	0f b6 47 02          	movzbl 0x2(%edi),%eax
43e47f:	50                   	push   %eax
43e480:	51                   	push   %ecx
43e481:	8b 4f 60             	mov    0x60(%edi),%ecx
43e484:	e8 ab 60 02 00       	call   0x464534
43e489:	59                   	pop    %ecx
43e48a:	59                   	pop    %ecx
43e48b:	e9 a1 85 fc ff       	jmp    0x406a31
43e490:	8b 45 10             	mov    0x10(%ebp),%eax
43e493:	83 c9 ff             	or     $0xffffffff,%ecx
43e496:	6a 04                	push   $0x4
43e498:	5e                   	pop    %esi
43e499:	66 89 4d e8          	mov    %cx,-0x18(%ebp)
43e49d:	33 c9                	xor    %ecx,%ecx
43e49f:	8b 00                	mov    (%eax),%eax
43e4a1:	89 47 10             	mov    %eax,0x10(%edi)
43e4a4:	40                   	inc    %eax
43e4a5:	89 45 0c             	mov    %eax,0xc(%ebp)
43e4a8:	6a 10                	push   $0x10
43e4aa:	5a                   	pop    %edx
43e4ab:	f7 e2                	mul    %edx
43e4ad:	c7 45 d0 78 fb 48 00 	movl   $0x48fb78,-0x30(%ebp)
43e4b4:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
43e4b7:	0f 90 c1             	seto   %cl
43e4ba:	89 5d d8             	mov    %ebx,-0x28(%ebp)
43e4bd:	f7 d9                	neg    %ecx
43e4bf:	89 5d dc             	mov    %ebx,-0x24(%ebp)
43e4c2:	0b c8                	or     %eax,%ecx
43e4c4:	33 c0                	xor    %eax,%eax
43e4c6:	03 ce                	add    %esi,%ecx
43e4c8:	0f 92 c0             	setb   %al
43e4cb:	f7 d8                	neg    %eax
43e4cd:	0b c1                	or     %ecx,%eax
43e4cf:	50                   	push   %eax
43e4d0:	e8 21 2b fe ff       	call   0x420ff6
43e4d5:	59                   	pop    %ecx
43e4d6:	85 c0                	test   %eax,%eax
43e4d8:	74 23                	je     0x43e4fd
43e4da:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43e4dd:	8d 50 04             	lea    0x4(%eax),%edx
43e4e0:	89 08                	mov    %ecx,(%eax)
43e4e2:	8b c2                	mov    %edx,%eax
43e4e4:	eb 12                	jmp    0x43e4f8
43e4e6:	c7 00 78 fb 48 00    	movl   $0x48fb78,(%eax)
43e4ec:	8d 40 10             	lea    0x10(%eax),%eax
43e4ef:	89 58 f4             	mov    %ebx,-0xc(%eax)
43e4f2:	89 58 f8             	mov    %ebx,-0x8(%eax)
43e4f5:	89 58 fc             	mov    %ebx,-0x4(%eax)
43e4f8:	49                   	dec    %ecx
43e4f9:	79 eb                	jns    0x43e4e6
43e4fb:	eb 02                	jmp    0x43e4ff
43e4fd:	8b d3                	mov    %ebx,%edx
43e4ff:	83 c8 ff             	or     $0xffffffff,%eax
43e502:	89 57 4c             	mov    %edx,0x4c(%edi)
43e505:	66 89 45 ea          	mov    %ax,-0x16(%ebp)
43e509:	33 c0                	xor    %eax,%eax
43e50b:	40                   	inc    %eax
43e50c:	89 45 f4             	mov    %eax,-0xc(%ebp)
43e50f:	39 47 10             	cmp    %eax,0x10(%edi)
43e512:	0f 8c 71 01 00 00    	jl     0x43e689
43e518:	c7 45 f8 10 00 00 00 	movl   $0x10,-0x8(%ebp)
43e51f:	8d 4d d0             	lea    -0x30(%ebp),%ecx
43e522:	e8 b9 90 fc ff       	call   0x4075e0
43e527:	8b 45 10             	mov    0x10(%ebp),%eax
43e52a:	8d 4d e0             	lea    -0x20(%ebp),%ecx
43e52d:	03 c6                	add    %esi,%eax
43e52f:	46                   	inc    %esi
43e530:	89 75 0c             	mov    %esi,0xc(%ebp)
43e533:	0f b6 00             	movzbl (%eax),%eax
43e536:	50                   	push   %eax
43e537:	89 45 ec             	mov    %eax,-0x14(%ebp)
43e53a:	e8 d3 79 fc ff       	call   0x405f12
43e53f:	8d 4d e0             	lea    -0x20(%ebp),%ecx
43e542:	e8 44 91 02 00       	call   0x46768b
43e547:	84 c0                	test   %al,%al
43e549:	74 12                	je     0x43e55d
43e54b:	8b 45 10             	mov    0x10(%ebp),%eax
43e54e:	03 c6                	add    %esi,%eax
43e550:	83 c6 04             	add    $0x4,%esi
43e553:	8b 00                	mov    (%eax),%eax
43e555:	89 45 e0             	mov    %eax,-0x20(%ebp)
43e558:	e9 f3 00 00 00       	jmp    0x43e650
43e55d:	8d 4d e0             	lea    -0x20(%ebp),%ecx
43e560:	e8 10 91 02 00       	call   0x467675
43e565:	84 c0                	test   %al,%al
43e567:	74 18                	je     0x43e581
43e569:	8b 4d 10             	mov    0x10(%ebp),%ecx
43e56c:	03 ce                	add    %esi,%ecx
43e56e:	83 c6 08             	add    $0x8,%esi
43e571:	8b 01                	mov    (%ecx),%eax
43e573:	89 45 e0             	mov    %eax,-0x20(%ebp)
43e576:	8b 41 04             	mov    0x4(%ecx),%eax
43e579:	89 45 e4             	mov    %eax,-0x1c(%ebp)
43e57c:	e9 cf 00 00 00       	jmp    0x43e650
43e581:	8d 4d e0             	lea    -0x20(%ebp),%ecx
43e584:	e8 d6 90 02 00       	call   0x46765f
43e589:	84 c0                	test   %al,%al
43e58b:	74 12                	je     0x43e59f
43e58d:	8b 45 10             	mov    0x10(%ebp),%eax
43e590:	03 c6                	add    %esi,%eax
43e592:	83 c6 08             	add    $0x8,%esi
43e595:	dd 00                	fldl   (%eax)
43e597:	dd 5d e0             	fstpl  -0x20(%ebp)
43e59a:	e9 b1 00 00 00       	jmp    0x43e650
43e59f:	8d 4d e0             	lea    -0x20(%ebp),%ecx
43e5a2:	e8 e3 79 fc ff       	call   0x405f8a
43e5a7:	84 c0                	test   %al,%al
43e5a9:	0f 84 a1 00 00 00    	je     0x43e650
43e5af:	8d 45 0c             	lea    0xc(%ebp),%eax
43e5b2:	50                   	push   %eax
43e5b3:	ff 75 10             	push   0x10(%ebp)
43e5b6:	e8 92 16 02 00       	call   0x45fc4d
43e5bb:	8b f0                	mov    %eax,%esi
43e5bd:	8b 45 ec             	mov    -0x14(%ebp),%eax
43e5c0:	89 75 f0             	mov    %esi,-0x10(%ebp)
43e5c3:	56                   	push   %esi
43e5c4:	83 f8 31             	cmp    $0x31,%eax
43e5c7:	75 21                	jne    0x43e5ea
43e5c9:	8d 4d c0             	lea    -0x40(%ebp),%ecx
43e5cc:	e8 70 99 fc ff       	call   0x407f41
43e5d1:	8b 4f 04             	mov    0x4(%edi),%ecx
43e5d4:	ff 75 c0             	push   -0x40(%ebp)
43e5d7:	8b 11                	mov    (%ecx),%edx
43e5d9:	ff 52 04             	call   *0x4(%edx)
43e5dc:	8d 4d c0             	lea    -0x40(%ebp),%ecx
43e5df:	8b f0                	mov    %eax,%esi
43e5e1:	e8 7e 74 fc ff       	call   0x405a64
43e5e6:	6a 01                	push   $0x1
43e5e8:	eb 21                	jmp    0x43e60b
43e5ea:	83 f8 30             	cmp    $0x30,%eax
43e5ed:	75 2c                	jne    0x43e61b
43e5ef:	8d 4d b0             	lea    -0x50(%ebp),%ecx
43e5f2:	e8 4a 99 fc ff       	call   0x407f41
43e5f7:	8d 45 b0             	lea    -0x50(%ebp),%eax
43e5fa:	50                   	push   %eax
43e5fb:	e8 99 83 fc ff       	call   0x406999
43e600:	8d 4d b0             	lea    -0x50(%ebp),%ecx
43e603:	8b f0                	mov    %eax,%esi
43e605:	e8 5a 74 fc ff       	call   0x405a64
43e60a:	53                   	push   %ebx
43e60b:	8d 4d e0             	lea    -0x20(%ebp),%ecx
43e60e:	e8 ff 78 fc ff       	call   0x405f12
43e613:	89 75 e0             	mov    %esi,-0x20(%ebp)
43e616:	8b 75 f0             	mov    -0x10(%ebp),%esi
43e619:	eb 2b                	jmp    0x43e646
43e61b:	83 f8 37             	cmp    $0x37,%eax
43e61e:	75 1e                	jne    0x43e63e
43e620:	8b cf                	mov    %edi,%ecx
43e622:	e8 47 15 02 00       	call   0x45fb6e
43e627:	85 c0                	test   %eax,%eax
43e629:	0f 84 82 00 00 00    	je     0x43e6b1
43e62f:	56                   	push   %esi
43e630:	e8 37 2a fe ff       	call   0x42106c
43e635:	8b 75 0c             	mov    0xc(%ebp),%esi
43e638:	59                   	pop    %ecx
43e639:	e9 e9 fe ff ff       	jmp    0x43e527
43e63e:	8d 4d e0             	lea    -0x20(%ebp),%ecx
43e641:	e8 db 8f 02 00       	call   0x467621
43e646:	56                   	push   %esi
43e647:	e8 20 2a fe ff       	call   0x42106c
43e64c:	8b 75 0c             	mov    0xc(%ebp),%esi
43e64f:	59                   	pop    %ecx
43e650:	8d 45 e0             	lea    -0x20(%ebp),%eax
43e653:	50                   	push   %eax
43e654:	8d 4d d0             	lea    -0x30(%ebp),%ecx
43e657:	e8 13 90 fc ff       	call   0x40766f
43e65c:	83 7d ec 7f          	cmpl   $0x7f,-0x14(%ebp)
43e660:	0f 85 c1 fe ff ff    	jne    0x43e527
43e666:	8b 4f 4c             	mov    0x4c(%edi),%ecx
43e669:	8d 45 d0             	lea    -0x30(%ebp),%eax
43e66c:	03 4d f8             	add    -0x8(%ebp),%ecx
43e66f:	50                   	push   %eax
43e670:	e8 48 8e fc ff       	call   0x4074bd
43e675:	8b 45 f4             	mov    -0xc(%ebp),%eax
43e678:	83 45 f8 10          	addl   $0x10,-0x8(%ebp)
43e67c:	40                   	inc    %eax
43e67d:	89 45 f4             	mov    %eax,-0xc(%ebp)
43e680:	3b 47 10             	cmp    0x10(%edi),%eax
43e683:	0f 8e 96 fe ff ff    	jle    0x43e51f
43e689:	ff 75 10             	push   0x10(%ebp)
43e68c:	e8 04 49 fe ff       	call   0x422f95
43e691:	59                   	pop    %ecx
43e692:	8d 4d 98             	lea    -0x68(%ebp),%ecx
43e695:	e8 10 69 fc ff       	call   0x404faa
43e69a:	b3 01                	mov    $0x1,%bl
43e69c:	8d 4d d0             	lea    -0x30(%ebp),%ecx
43e69f:	e8 d2 90 fc ff       	call   0x407776
43e6a4:	8d 4d e0             	lea    -0x20(%ebp),%ecx
43e6a7:	e8 4f 78 fc ff       	call   0x405efb
43e6ac:	e9 80 83 fc ff       	jmp    0x406a31
43e6b1:	8b 45 f4             	mov    -0xc(%ebp),%eax
43e6b4:	8b cf                	mov    %edi,%ecx
43e6b6:	68 10 f9 48 00       	push   $0x48f910
43e6bb:	68 a8 a0 4b 00       	push   $0x4ba0a8
43e6c0:	50                   	push   %eax
43e6c1:	ff 75 08             	push   0x8(%ebp)
43e6c4:	e8 e8 15 02 00       	call   0x45fcb1
43e6c9:	56                   	push   %esi
43e6ca:	e8 9d 29 fe ff       	call   0x42106c
43e6cf:	59                   	pop    %ecx
43e6d0:	ff 75 10             	push   0x10(%ebp)
43e6d3:	e8 bd 48 fe ff       	call   0x422f95
43e6d8:	59                   	pop    %ecx
43e6d9:	8d 4d 98             	lea    -0x68(%ebp),%ecx
43e6dc:	e8 c9 68 fc ff       	call   0x404faa
43e6e1:	eb b9                	jmp    0x43e69c
43e6e3:	33 db                	xor    %ebx,%ebx
43e6e5:	43                   	inc    %ebx
43e6e6:	88 5f 01             	mov    %bl,0x1(%edi)
43e6e9:	e9 79 83 fc ff       	jmp    0x406a67
43e6ee:	8d 4e 2c             	lea    0x2c(%esi),%ecx
43e6f1:	e8 d0 17 fe ff       	call   0x41fec6
43e6f6:	8b d8                	mov    %eax,%ebx
43e6f8:	53                   	push   %ebx
43e6f9:	e8 bf 89 fc ff       	call   0x4070bd
43e6fe:	53                   	push   %ebx
43e6ff:	e8 06 8a fc ff       	call   0x40710a
43e704:	53                   	push   %ebx
43e705:	e8 32 47 fe ff       	call   0x422e3c
43e70a:	59                   	pop    %ecx
43e70b:	6a 22                	push   $0x22
43e70d:	5a                   	pop    %edx
43e70e:	0f b7 4c 43 fe       	movzwl -0x2(%ebx,%eax,2),%ecx
43e713:	66 3b ca             	cmp    %dx,%cx
43e716:	74 35                	je     0x43e74d
43e718:	6a 27                	push   $0x27
43e71a:	5a                   	pop    %edx