43d2ed:	8b 4d 08             	mov    0x8(%ebp),%ecx
43d2f0:	89 08                	mov    %ecx,(%eax)
43d2f2:	eb 02                	jmp    0x43d2f6
43d2f4:	33 c0                	xor    %eax,%eax
43d2f6:	89 06                	mov    %eax,(%esi)
43d2f8:	b0 01                	mov    $0x1,%al
43d2fa:	5e                   	pop    %esi
43d2fb:	5d                   	pop    %ebp
43d2fc:	c2 04 00             	ret    $0x4
43d2ff:	55                   	push   %ebp
43d300:	8b ec                	mov    %esp,%ebp
43d302:	56                   	push   %esi
43d303:	57                   	push   %edi
43d304:	ff 75 08             	push   0x8(%ebp)
43d307:	8b f9                	mov    %ecx,%edi
43d309:	e8 c2 44 fe ff       	call   0x4217d0
43d30e:	59                   	pop    %ecx
43d30f:	8d 70 01             	lea    0x1(%eax),%esi
43d312:	56                   	push   %esi
43d313:	89 47 04             	mov    %eax,0x4(%edi)
43d316:	e8 4f 14 fe ff       	call   0x41e76a
43d31b:	50                   	push   %eax
43d31c:	89 47 08             	mov    %eax,0x8(%edi)
43d31f:	e8 c6 21 fe ff       	call   0x41f4ea
43d324:	56                   	push   %esi
43d325:	ff 75 08             	push   0x8(%ebp)
43d328:	89 07                	mov    %eax,(%edi)
43d32a:	50                   	push   %eax
43d32b:	e8 50 1b fe ff       	call   0x41ee80
43d330:	83 c4 10             	add    $0x10,%esp
43d333:	8b cf                	mov    %edi,%ecx
43d335:	e8 10 98 fc ff       	call   0x406b4a
43d33a:	8b c7                	mov    %edi,%eax
43d33c:	5f                   	pop    %edi
43d33d:	5e                   	pop    %esi
43d33e:	5d                   	pop    %ebp
43d33f:	c2 04 00             	ret    $0x4
43d342:	55                   	push   %ebp
43d343:	8b ec                	mov    %esp,%ebp
43d345:	80 7d 0c 01          	cmpb   $0x1,0xc(%ebp)
43d349:	75 10                	jne    0x43d35b
43d34b:	ff 75 08             	push   0x8(%ebp)
43d34e:	e8 e8 3c fc ff       	call   0x40103b
43d353:	84 c0                	test   %al,%al
43d355:	75 1f                	jne    0x43d376
43d357:	6a 01                	push   $0x1
43d359:	eb 02                	jmp    0x43d35d
43d35b:	6a 00                	push   $0x0
43d35d:	6a 00                	push   $0x0
43d35f:	ff 75 08             	push   0x8(%ebp)
43d362:	ff 15 48 d6 48 00    	call   *0x48d648
43d368:	50                   	push   %eax
43d369:	ff 15 74 d1 48 00    	call   *0x48d174
43d36f:	50                   	push   %eax
43d370:	ff 15 4c d6 48 00    	call   *0x48d64c
43d376:	5d                   	pop    %ebp
43d377:	c2 08 00             	ret    $0x8
43d37a:	6a 00                	push   $0x0
43d37c:	6a 00                	push   $0x0
43d37e:	6a 10                	push   $0x10
43d380:	ff 31                	push   (%ecx)
43d382:	ff 15 78 d6 48 00    	call   *0x48d678
43d388:	b0 01                	mov    $0x1,%al
43d38a:	c3                   	ret
43d38b:	55                   	push   %ebp
43d38c:	8b ec                	mov    %esp,%ebp
43d38e:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
43d392:	74 04                	je     0x43d398
43d394:	6a 01                	push   $0x1
43d396:	eb 02                	jmp    0x43d39a
43d398:	6a 00                	push   $0x0
43d39a:	ff 31                	push   (%ecx)
43d39c:	ff 15 3c d6 48 00    	call   *0x48d63c
43d3a2:	b0 01                	mov    $0x1,%al
43d3a4:	5d                   	pop    %ebp
43d3a5:	c2 04 00             	ret    $0x4
43d3a8:	55                   	push   %ebp
43d3a9:	8b ec                	mov    %esp,%ebp
43d3ab:	51                   	push   %ecx
43d3ac:	56                   	push   %esi
43d3ad:	57                   	push   %edi
43d3ae:	8b f9                	mov    %ecx,%edi
43d3b0:	33 f6                	xor    %esi,%esi
43d3b2:	39 77 04             	cmp    %esi,0x4(%edi)
43d3b5:	77 05                	ja     0x43d3bc
43d3b7:	83 c8 ff             	or     $0xffffffff,%eax
43d3ba:	eb 35                	jmp    0x43d3f1
43d3bc:	53                   	push   %ebx
43d3bd:	ff 75 08             	push   0x8(%ebp)
43d3c0:	e8 16 39 fe ff       	call   0x420cdb
43d3c5:	8b 5f 04             	mov    0x4(%edi),%ebx
43d3c8:	59                   	pop    %ecx
43d3c9:	89 45 fc             	mov    %eax,-0x4(%ebp)
43d3cc:	85 db                	test   %ebx,%ebx
43d3ce:	74 1d                	je     0x43d3ed
43d3d0:	8b 3f                	mov    (%edi),%edi
43d3d2:	8b 55 08             	mov    0x8(%ebp),%edx
43d3d5:	50                   	push   %eax
43d3d6:	8b cf                	mov    %edi,%ecx
43d3d8:	e8 c0 ea fc ff       	call   0x40be9d
43d3dd:	59                   	pop    %ecx
43d3de:	85 c0                	test   %eax,%eax
43d3e0:	74 15                	je     0x43d3f7
43d3e2:	8b 45 fc             	mov    -0x4(%ebp),%eax
43d3e5:	46                   	inc    %esi
43d3e6:	83 c7 02             	add    $0x2,%edi
43d3e9:	3b f3                	cmp    %ebx,%esi
43d3eb:	72 e5                	jb     0x43d3d2
43d3ed:	83 c8 ff             	or     $0xffffffff,%eax
43d3f0:	5b                   	pop    %ebx
43d3f1:	5f                   	pop    %edi
43d3f2:	5e                   	pop    %esi
43d3f3:	c9                   	leave
43d3f4:	c2 08 00             	ret    $0x8
43d3f7:	8b c6                	mov    %esi,%eax
43d3f9:	eb f5                	jmp    0x43d3f0
43d3fb:	55                   	push   %ebp
43d3fc:	8b ec                	mov    %esp,%ebp
43d3fe:	81 ec 00 02 00 00    	sub    $0x200,%esp
43d404:	8d 85 00 fe ff ff    	lea    -0x200(%ebp),%eax
43d40a:	68 ff 00 00 00       	push   $0xff
43d40f:	50                   	push   %eax
43d410:	ff 31                	push   (%ecx)
43d412:	ff 15 64 d6 48 00    	call   *0x48d664
43d418:	8b 4d 08             	mov    0x8(%ebp),%ecx
43d41b:	8d 85 00 fe ff ff    	lea    -0x200(%ebp),%eax
43d421:	50                   	push   %eax
43d422:	e8 3c 96 fc ff       	call   0x406a63
43d427:	c9                   	leave
43d428:	c2 04 00             	ret    $0x4
43d42b:	53                   	push   %ebx
43d42c:	56                   	push   %esi
43d42d:	8b 31                	mov    (%ecx),%esi
43d42f:	6a f0                	push   $0xfffffff0
43d431:	56                   	push   %esi
43d432:	ff 15 44 d6 48 00    	call   *0x48d644
43d438:	bb 00 00 00 40       	mov    $0x40000000,%ebx
43d43d:	eb 1b                	jmp    0x43d45a
43d43f:	56                   	push   %esi
43d440:	e8 1e 00 00 00       	call   0x43d463
43d445:	85 c0                	test   %eax,%eax
43d447:	74 15                	je     0x43d45e
43d449:	56                   	push   %esi
43d44a:	e8 14 00 00 00       	call   0x43d463
43d44f:	8b f0                	mov    %eax,%esi
43d451:	6a f0                	push   $0xfffffff0
43d453:	56                   	push   %esi
43d454:	ff 15 44 d6 48 00    	call   *0x48d644
43d45a:	85 c3                	test   %eax,%ebx
43d45c:	75 e1                	jne    0x43d43f
43d45e:	8b c6                	mov    %esi,%eax
43d460:	5e                   	pop    %esi
43d461:	5b                   	pop    %ebx
43d462:	c3                   	ret
43d463:	55                   	push   %ebp
43d464:	8b ec                	mov    %esp,%ebp
43d466:	6a f0                	push   $0xfffffff0
43d468:	ff 75 08             	push   0x8(%ebp)
43d46b:	ff 15 44 d6 48 00    	call   *0x48d644
43d471:	85 c0                	test   %eax,%eax
43d473:	79 06                	jns    0x43d47b
43d475:	33 c0                	xor    %eax,%eax
43d477:	5d                   	pop    %ebp
43d478:	c2 04 00             	ret    $0x4
43d47b:	5d                   	pop    %ebp
43d47c:	ff 25 68 d6 48 00    	jmp    *0x48d668
43d482:	55                   	push   %ebp
43d483:	8b ec                	mov    %esp,%ebp
43d485:	51                   	push   %ecx
43d486:	51                   	push   %ecx
43d487:	53                   	push   %ebx
43d488:	8b 5d 08             	mov    0x8(%ebp),%ebx
43d48b:	56                   	push   %esi
43d48c:	8b f1                	mov    %ecx,%esi
43d48e:	53                   	push   %ebx
43d48f:	ff 36                	push   (%esi)
43d491:	ff 15 7c d6 48 00    	call   *0x48d67c
43d497:	85 c0                	test   %eax,%eax
43d499:	74 4f                	je     0x43d4ea
43d49b:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
43d49f:	74 45                	je     0x43d4e6
43d4a1:	8b ce                	mov    %esi,%ecx
43d4a3:	e8 83 ff ff ff       	call   0x43d42b
43d4a8:	8b c8                	mov    %eax,%ecx
43d4aa:	85 c9                	test   %ecx,%ecx
43d4ac:	74 3c                	je     0x43d4ea
43d4ae:	8b 03                	mov    (%ebx),%eax
43d4b0:	8b 73 0c             	mov    0xc(%ebx),%esi
43d4b3:	89 45 f8             	mov    %eax,-0x8(%ebp)
43d4b6:	8b 43 04             	mov    0x4(%ebx),%eax
43d4b9:	57                   	push   %edi
43d4ba:	8b 7b 08             	mov    0x8(%ebx),%edi
43d4bd:	2b 3b                	sub    (%ebx),%edi
43d4bf:	89 45 fc             	mov    %eax,-0x4(%ebp)
43d4c2:	2b f0                	sub    %eax,%esi
43d4c4:	8d 45 f8             	lea    -0x8(%ebp),%eax
43d4c7:	50                   	push   %eax
43d4c8:	51                   	push   %ecx
43d4c9:	ff 15 54 d6 48 00    	call   *0x48d654
43d4cf:	8b 45 f8             	mov    -0x8(%ebp),%eax
43d4d2:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43d4d5:	89 03                	mov    %eax,(%ebx)
43d4d7:	03 c7                	add    %edi,%eax
43d4d9:	89 43 08             	mov    %eax,0x8(%ebx)
43d4dc:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
43d4df:	89 4b 04             	mov    %ecx,0x4(%ebx)
43d4e2:	89 43 0c             	mov    %eax,0xc(%ebx)
43d4e5:	5f                   	pop    %edi
43d4e6:	b0 01                	mov    $0x1,%al
43d4e8:	eb 02                	jmp    0x43d4ec
43d4ea:	32 c0                	xor    %al,%al
43d4ec:	5e                   	pop    %esi
43d4ed:	5b                   	pop    %ebx
43d4ee:	c9                   	leave
43d4ef:	c2 08 00             	ret    $0x8
43d4f2:	55                   	push   %ebp
43d4f3:	8b ec                	mov    %esp,%ebp
43d4f5:	83 ec 18             	sub    $0x18,%esp
43d4f8:	53                   	push   %ebx
43d4f9:	56                   	push   %esi
43d4fa:	8b d9                	mov    %ecx,%ebx
43d4fc:	8b 4d 08             	mov    0x8(%ebp),%ecx
43d4ff:	57                   	push   %edi
43d500:	89 5d f8             	mov    %ebx,-0x8(%ebp)
43d503:	e8 c6 e7 fc ff       	call   0x40bcce
43d508:	ff 33                	push   (%ebx)
43d50a:	e8 2c 3b fc ff       	call   0x40103b
43d50f:	84 c0                	test   %al,%al
43d511:	74 04                	je     0x43d517
43d513:	32 c0                	xor    %al,%al
43d515:	eb 7c                	jmp    0x43d593
43d517:	8b cb                	mov    %ebx,%ecx
43d519:	e8 7c 00 00 00       	call   0x43d59a
43d51e:	8b d8                	mov    %eax,%ebx
43d520:	85 db                	test   %ebx,%ebx
43d522:	75 05                	jne    0x43d529
43d524:	bb ff 7f 00 00       	mov    $0x7fff,%ebx
43d529:	33 c9                	xor    %ecx,%ecx
43d52b:	6a 02                	push   $0x2
43d52d:	8d 73 01             	lea    0x1(%ebx),%esi
43d530:	5a                   	pop    %edx
43d531:	8b c6                	mov    %esi,%eax
43d533:	f7 e2                	mul    %edx
43d535:	0f 90 c1             	seto   %cl
43d538:	f7 d9                	neg    %ecx
43d53a:	0b c8                	or     %eax,%ecx
43d53c:	51                   	push   %ecx
43d53d:	e8 a8 1f fe ff       	call   0x41f4ea
43d542:	59                   	pop    %ecx
43d543:	8b f8                	mov    %eax,%edi
43d545:	8b 45 f8             	mov    -0x8(%ebp),%eax
43d548:	57                   	push   %edi
43d549:	56                   	push   %esi
43d54a:	6a 0d                	push   $0xd
43d54c:	ff 30                	push   (%eax)
43d54e:	ff 15 70 d6 48 00    	call   *0x48d670
43d554:	85 c0                	test   %eax,%eax
43d556:	7e 32                	jle    0x43d58a
43d558:	57                   	push   %edi
43d559:	e8 72 42 fe ff       	call   0x4217d0
43d55e:	59                   	pop    %ecx
43d55f:	57                   	push   %edi
43d560:	3b c3                	cmp    %ebx,%eax
43d562:	75 1e                	jne    0x43d582
43d564:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43d567:	e8 93 fd ff ff       	call   0x43d2ff
43d56c:	ff 75 08             	push   0x8(%ebp)
43d56f:	8d 45 e8             	lea    -0x18(%ebp),%eax
43d572:	50                   	push   %eax
43d573:	e8 66 ec fc ff       	call   0x40c1de
43d578:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43d57b:	e8 b7 f5 fc ff       	call   0x40cb37
43d580:	eb 08                	jmp    0x43d58a
43d582:	8b 4d 08             	mov    0x8(%ebp),%ecx
43d585:	e8 d9 94 fc ff       	call   0x406a63
43d58a:	57                   	push   %edi
43d58b:	e8 ce 1f fe ff       	call   0x41f55e
43d590:	59                   	pop    %ecx
43d591:	b0 01                	mov    $0x1,%al
43d593:	5f                   	pop    %edi
43d594:	5e                   	pop    %esi
43d595:	5b                   	pop    %ebx
43d596:	c9                   	leave
43d597:	c2 04 00             	ret    $0x4
43d59a:	56                   	push   %esi
43d59b:	8b f1                	mov    %ecx,%esi
43d59d:	ff 36                	push   (%esi)
43d59f:	e8 97 3a fc ff       	call   0x40103b
43d5a4:	84 c0                	test   %al,%al
43d5a6:	74 04                	je     0x43d5ac
43d5a8:	33 c0                	xor    %eax,%eax
43d5aa:	5e                   	pop    %esi
43d5ab:	c3                   	ret
43d5ac:	6a 00                	push   $0x0
43d5ae:	6a 00                	push   $0x0
43d5b0:	6a 0e                	push   $0xe
43d5b2:	ff 36                	push   (%esi)
43d5b4:	ff 15 70 d6 48 00    	call   *0x48d670
43d5ba:	5e                   	pop    %esi
43d5bb:	c3                   	ret
43d5bc:	55                   	push   %ebp
43d5bd:	8b ec                	mov    %esp,%ebp
43d5bf:	83 ec 10             	sub    $0x10,%esp
43d5c2:	53                   	push   %ebx
43d5c3:	56                   	push   %esi
43d5c4:	8b f1                	mov    %ecx,%esi
43d5c6:	8d 4d f0             	lea    -0x10(%ebp),%ecx
43d5c9:	e8 29 02 fd ff       	call   0x40d7f7
43d5ce:	8d 45 f0             	lea    -0x10(%ebp),%eax
43d5d1:	50                   	push   %eax
43d5d2:	8b ce                	mov    %esi,%ecx
43d5d4:	e8 22 fe ff ff       	call   0x43d3fb
43d5d9:	8b 45 08             	mov    0x8(%ebp),%eax
43d5dc:	51                   	push   %ecx
43d5dd:	ff 30                	push   (%eax)
43d5df:	8d 4d f0             	lea    -0x10(%ebp),%ecx
43d5e2:	e8 c1 fd ff ff       	call   0x43d3a8
43d5e7:	83 f8 ff             	cmp    $0xffffffff,%eax
43d5ea:	8d 4d f0             	lea    -0x10(%ebp),%ecx
43d5ed:	0f 95 c3             	setne  %bl
43d5f0:	e8 42 f5 fc ff       	call   0x40cb37
43d5f5:	5e                   	pop    %esi
43d5f6:	8a c3                	mov    %bl,%al
43d5f8:	5b                   	pop    %ebx
43d5f9:	c9                   	leave
43d5fa:	c2 08 00             	ret    $0x8
43d5fd:	ff 31                	push   (%ecx)
43d5ff:	ff 15 34 d6 48 00    	call   *0x48d634
43d605:	85 c0                	test   %eax,%eax
43d607:	0f 95 c0             	setne  %al
43d60a:	c3                   	ret
43d60b:	ff 31                	push   (%ecx)
43d60d:	ff 15 38 d6 48 00    	call   *0x48d638
43d613:	85 c0                	test   %eax,%eax
43d615:	0f 95 c0             	setne  %al
43d618:	c3                   	ret
43d619:	55                   	push   %ebp
43d61a:	8b ec                	mov    %esp,%ebp
43d61c:	6a 01                	push   $0x1
43d61e:	ff 75 14             	push   0x14(%ebp)
43d621:	ff 75 10             	push   0x10(%ebp)
43d624:	ff 75 0c             	push   0xc(%ebp)
43d627:	ff 75 08             	push   0x8(%ebp)
43d62a:	ff 31                	push   (%ecx)
43d62c:	ff 15 e8 d6 48 00    	call   *0x48d6e8
43d632:	85 c0                	test   %eax,%eax
43d634:	0f 95 c0             	setne  %al
43d637:	5d                   	pop    %ebp
43d638:	c2 10 00             	ret    $0x10
43d63b:	55                   	push   %ebp