45c2b3:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45c2b6:	51                   	push   %ecx
45c2b7:	8b cb                	mov    %ebx,%ecx
45c2b9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45c2ba:	ff 90 3c 01 00 00    	call   *0x13c(%eax)
45c2c0:	8b 45 c8             	mov    -0x38(%ebp),%eax
45c2c3:	8b 4d cc             	mov    -0x34(%ebp),%ecx
45c2c6:	2b 45 c0             	sub    -0x40(%ebp),%eax
45c2c9:	2b 4d c4             	sub    -0x3c(%ebp),%ecx
45c2cc:	eb 20                	jmp    0x45c2ee
45c2ce:	8b cb                	mov    %ebx,%ecx
45c2d0:	e8 77 94 fe ff       	call   0x44574c
45c2d5:	8d 4d b0             	lea    -0x50(%ebp),%ecx
45c2d8:	51                   	push   %ecx
45c2d9:	ff 70 1c             	push   0x1c(%eax)
45c2dc:	ff 15 8c 08 4b 00    	call   *0x4b088c
45c2e2:	8b 45 b8             	mov    -0x48(%ebp),%eax
45c2e5:	8b 4d bc             	mov    -0x44(%ebp),%ecx
45c2e8:	2b 45 b0             	sub    -0x50(%ebp),%eax
45c2eb:	2b 4d b4             	sub    -0x4c(%ebp),%ecx
45c2ee:	33 ff                	xor    %edi,%edi
45c2f0:	39 bb a8 00 00 00    	cmp    %edi,0xa8(%ebx)
45c2f6:	89 45 d8             	mov    %eax,-0x28(%ebp)
45c2f9:	89 4d dc             	mov    %ecx,-0x24(%ebp)
45c2fc:	74 05                	je     0x45c303
45c2fe:	89 7d 80             	mov    %edi,-0x80(%ebp)
45c301:	eb 0f                	jmp    0x45c312
45c303:	ff b3 9c 00 00 00    	push   0x9c(%ebx)
45c309:	ff 15 bc 06 4b 00    	call   *0x4b06bc
45c30f:	89 45 80             	mov    %eax,-0x80(%ebp)
45c312:	a1 e8 c3 4a 00       	mov    0x4ac3e8,%eax
45c317:	f7 d8                	neg    %eax
45c319:	89 45 e0             	mov    %eax,-0x20(%ebp)
45c31c:	a1 ec c3 4a 00       	mov    0x4ac3ec,%eax
45c321:	f7 d8                	neg    %eax
45c323:	39 bb 9c 00 00 00    	cmp    %edi,0x9c(%ebx)
45c329:	89 45 e4             	mov    %eax,-0x1c(%ebp)
45c32c:	89 7d f4             	mov    %edi,-0xc(%ebp)
45c32f:	89 7d f8             	mov    %edi,-0x8(%ebp)
45c332:	89 7d fc             	mov    %edi,-0x4(%ebp)
45c335:	0f 8e 66 03 00 00    	jle    0x45c6a1
45c33b:	ff 75 fc             	push   -0x4(%ebp)
45c33e:	8b cb                	mov    %ebx,%ecx
45c340:	e8 6a fa ff ff       	call   0x45bdaf
45c345:	ff 75 fc             	push   -0x4(%ebp)
45c348:	8b f0                	mov    %eax,%esi
45c34a:	8d 8b 94 00 00 00    	lea    0x94(%ebx),%ecx
45c350:	89 75 f0             	mov    %esi,-0x10(%ebp)
45c353:	e8 0d 9f fb ff       	call   0x416265
45c358:	3b f7                	cmp    %edi,%esi
45c35a:	8b 00                	mov    (%eax),%eax
45c35c:	0f 84 c2 02 00 00    	je     0x45c624
45c362:	8b 06                	mov    (%esi),%eax
45c364:	8b ce                	mov    %esi,%ecx
45c366:	ff 90 50 01 00 00    	call   *0x150(%eax)
45c36c:	85 c0                	test   %eax,%eax
45c36e:	0f 84 4a 02 00 00    	je     0x45c5be
45c374:	8b 46 7c             	mov    0x7c(%esi),%eax
45c377:	a8 04                	test   $0x4,%al
45c379:	74 09                	je     0x45c384
45c37b:	a8 01                	test   $0x1,%al
45c37d:	74 05                	je     0x45c384
45c37f:	6a 06                	push   $0x6
45c381:	58                   	pop    %eax
45c382:	eb 0f                	jmp    0x45c393
45c384:	25 00 a0 00 00       	and    $0xa000,%eax
45c389:	f7 d8                	neg    %eax
45c38b:	1b c0                	sbb    %eax,%eax
45c38d:	83 e0 fa             	and    $0xfffffffa,%eax
45c390:	83 c0 10             	add    $0x10,%eax
45c393:	8b 16                	mov    (%esi),%edx
45c395:	50                   	push   %eax
45c396:	6a ff                	push   $0xffffffff
45c398:	8d 45 d0             	lea    -0x30(%ebp),%eax
45c39b:	50                   	push   %eax
45c39c:	8b ce                	mov    %esi,%ecx
45c39e:	ff 92 34 01 00 00    	call   *0x134(%edx)
45c3a4:	ff 75 d4             	push   -0x2c(%ebp)
45c3a7:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45c3aa:	ff 75 d0             	push   -0x30(%ebp)
45c3ad:	ff 75 e4             	push   -0x1c(%ebp)
45c3b0:	ff 75 e0             	push   -0x20(%ebp)
45c3b3:	e8 87 20 fb ff       	call   0x40e43f
45c3b8:	8d 45 b0             	lea    -0x50(%ebp),%eax
45c3bb:	50                   	push   %eax
45c3bc:	ff 76 1c             	push   0x1c(%esi)
45c3bf:	ff 15 40 07 4b 00    	call   *0x4b0740
45c3c5:	8d 45 b0             	lea    -0x50(%ebp),%eax
45c3c8:	50                   	push   %eax
45c3c9:	8b cb                	mov    %ebx,%ecx
45c3cb:	e8 4e 2c ff ff       	call   0x44f01e
45c3d0:	39 7d 10             	cmp    %edi,0x10(%ebp)
45c3d3:	0f 84 0b 01 00 00    	je     0x45c4e4
45c3d9:	8b 45 b0             	mov    -0x50(%ebp),%eax
45c3dc:	3b 45 c0             	cmp    -0x40(%ebp),%eax
45c3df:	7e 17                	jle    0x45c3f8
45c3e1:	39 bb 90 00 00 00    	cmp    %edi,0x90(%ebx)
45c3e7:	75 0f                	jne    0x45c3f8
45c3e9:	2b 45 c0             	sub    -0x40(%ebp),%eax
45c3ec:	57                   	push   %edi
45c3ed:	50                   	push   %eax
45c3ee:	8d 45 c0             	lea    -0x40(%ebp),%eax
45c3f1:	50                   	push   %eax
45c3f2:	ff 15 30 07 4b 00    	call   *0x4b0730
45c3f8:	8b 45 c8             	mov    -0x38(%ebp),%eax
45c3fb:	8b 4d d8             	mov    -0x28(%ebp),%ecx
45c3fe:	3b c1                	cmp    %ecx,%eax
45c400:	7e 2b                	jle    0x45c42d
45c402:	39 bb 90 00 00 00    	cmp    %edi,0x90(%ebx)
45c408:	75 23                	jne    0x45c42d
45c40a:	2b 05 e8 c3 4a 00    	sub    0x4ac3e8,%eax
45c410:	2b 45 c0             	sub    -0x40(%ebp),%eax
45c413:	2b c8                	sub    %eax,%ecx
45c415:	8b 45 e0             	mov    -0x20(%ebp),%eax
45c418:	3b c8                	cmp    %eax,%ecx
45c41a:	7e 02                	jle    0x45c41e
45c41c:	8b c1                	mov    %ecx,%eax
45c41e:	2b 45 c0             	sub    -0x40(%ebp),%eax
45c421:	57                   	push   %edi
45c422:	50                   	push   %eax
45c423:	8d 45 c0             	lea    -0x40(%ebp),%eax
45c426:	50                   	push   %eax
45c427:	ff 15 30 07 4b 00    	call   *0x4b0730
45c42d:	39 7d f8             	cmp    %edi,-0x8(%ebp)
45c430:	74 1d                	je     0x45c44f
45c432:	a1 e8 c3 4a 00       	mov    0x4ac3e8,%eax
45c437:	8b 4d c0             	mov    -0x40(%ebp),%ecx
45c43a:	03 c1                	add    %ecx,%eax
45c43c:	57                   	push   %edi
45c43d:	f7 d8                	neg    %eax
45c43f:	50                   	push   %eax
45c440:	8d 45 c0             	lea    -0x40(%ebp),%eax
45c443:	50                   	push   %eax
45c444:	89 7d f8             	mov    %edi,-0x8(%ebp)
45c447:	ff 15 30 07 4b 00    	call   *0x4b0730
45c44d:	eb 2a                	jmp    0x45c479
45c44f:	8b 45 d8             	mov    -0x28(%ebp),%eax
45c452:	2b 05 e8 c3 4a 00    	sub    0x4ac3e8,%eax
45c458:	39 45 c0             	cmp    %eax,-0x40(%ebp)
45c45b:	7c 1c                	jl     0x45c479
45c45d:	8b 45 fc             	mov    -0x4(%ebp),%eax
45c460:	3b c7                	cmp    %edi,%eax
45c462:	7e 15                	jle    0x45c479
45c464:	48                   	dec    %eax
45c465:	50                   	push   %eax
45c466:	8d 8b 94 00 00 00    	lea    0x94(%ebx),%ecx
45c46c:	e8 f4 9d fb ff       	call   0x416265
45c471:	39 38                	cmp    %edi,(%eax)
45c473:	0f 85 93 01 00 00    	jne    0x45c60c
45c479:	8d 45 b0             	lea    -0x50(%ebp),%eax
45c47c:	50                   	push   %eax
45c47d:	8d 45 c0             	lea    -0x40(%ebp),%eax
45c480:	50                   	push   %eax
45c481:	ff 15 0c 07 4b 00    	call   *0x4b070c
45c487:	85 c0                	test   %eax,%eax
45c489:	75 36                	jne    0x45c4c1
45c48b:	39 bb a8 00 00 00    	cmp    %edi,0xa8(%ebx)
45c491:	75 1e                	jne    0x45c4b1
45c493:	f6 46 7c 01          	testb  $0x1,0x7c(%esi)
45c497:	75 18                	jne    0x45c4b1
45c499:	8b be 8c 00 00 00    	mov    0x8c(%esi),%edi
45c49f:	81 c7 94 00 00 00    	add    $0x94,%edi
45c4a5:	8d 75 c0             	lea    -0x40(%ebp),%esi
45c4a8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45c4a9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45c4aa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45c4ab:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45c4ac:	8b 75 f0             	mov    -0x10(%ebp),%esi
45c4af:	33 ff                	xor    %edi,%edi
45c4b1:	8d 45 c0             	lea    -0x40(%ebp),%eax
45c4b4:	50                   	push   %eax
45c4b5:	ff 76 1c             	push   0x1c(%esi)
45c4b8:	8d 45 80             	lea    -0x80(%ebp),%eax
45c4bb:	50                   	push   %eax
45c4bc:	e8 9f 70 fe ff       	call   0x443560
45c4c1:	8b 45 d0             	mov    -0x30(%ebp),%eax
45c4c4:	2b 05 e8 c3 4a 00    	sub    0x4ac3e8,%eax
45c4ca:	03 45 c0             	add    -0x40(%ebp),%eax
45c4cd:	89 45 e0             	mov    %eax,-0x20(%ebp)
45c4d0:	8b 45 d4             	mov    -0x2c(%ebp),%eax
45c4d3:	39 45 f4             	cmp    %eax,-0xc(%ebp)
45c4d6:	0f 8f eb 00 00 00    	jg     0x45c5c7
45c4dc:	89 45 f4             	mov    %eax,-0xc(%ebp)
45c4df:	e9 e3 00 00 00       	jmp    0x45c5c7
45c4e4:	8b 45 b4             	mov    -0x4c(%ebp),%eax
45c4e7:	3b 45 c4             	cmp    -0x3c(%ebp),%eax
45c4ea:	7e 17                	jle    0x45c503
45c4ec:	39 bb 90 00 00 00    	cmp    %edi,0x90(%ebx)
45c4f2:	75 0f                	jne    0x45c503
45c4f4:	2b 45 c4             	sub    -0x3c(%ebp),%eax
45c4f7:	50                   	push   %eax
45c4f8:	57                   	push   %edi
45c4f9:	8d 45 c0             	lea    -0x40(%ebp),%eax
45c4fc:	50                   	push   %eax
45c4fd:	ff 15 30 07 4b 00    	call   *0x4b0730
45c503:	8b 45 cc             	mov    -0x34(%ebp),%eax
45c506:	8b 4d dc             	mov    -0x24(%ebp),%ecx
45c509:	3b c1                	cmp    %ecx,%eax
45c50b:	7e 2b                	jle    0x45c538
45c50d:	39 bb 90 00 00 00    	cmp    %edi,0x90(%ebx)
45c513:	75 23                	jne    0x45c538
45c515:	2b 45 c4             	sub    -0x3c(%ebp),%eax
45c518:	2b 05 ec c3 4a 00    	sub    0x4ac3ec,%eax
45c51e:	2b c8                	sub    %eax,%ecx
45c520:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45c523:	3b c8                	cmp    %eax,%ecx
45c525:	7e 02                	jle    0x45c529
45c527:	8b c1                	mov    %ecx,%eax
45c529:	2b 45 c4             	sub    -0x3c(%ebp),%eax
45c52c:	50                   	push   %eax
45c52d:	57                   	push   %edi
45c52e:	8d 45 c0             	lea    -0x40(%ebp),%eax
45c531:	50                   	push   %eax
45c532:	ff 15 30 07 4b 00    	call   *0x4b0730
45c538:	39 7d f8             	cmp    %edi,-0x8(%ebp)
45c53b:	0f 84 99 00 00 00    	je     0x45c5da
45c541:	a1 ec c3 4a 00       	mov    0x4ac3ec,%eax
45c546:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
45c549:	03 c8                	add    %eax,%ecx
45c54b:	f7 d9                	neg    %ecx
45c54d:	51                   	push   %ecx
45c54e:	57                   	push   %edi
45c54f:	8d 45 c0             	lea    -0x40(%ebp),%eax
45c552:	50                   	push   %eax
45c553:	89 7d f8             	mov    %edi,-0x8(%ebp)
45c556:	ff 15 30 07 4b 00    	call   *0x4b0730
45c55c:	8d 45 b0             	lea    -0x50(%ebp),%eax
45c55f:	50                   	push   %eax
45c560:	8d 45 c0             	lea    -0x40(%ebp),%eax
45c563:	50                   	push   %eax
45c564:	ff 15 0c 07 4b 00    	call   *0x4b070c
45c56a:	85 c0                	test   %eax,%eax
45c56c:	75 36                	jne    0x45c5a4
45c56e:	39 bb a8 00 00 00    	cmp    %edi,0xa8(%ebx)
45c574:	75 1e                	jne    0x45c594
45c576:	f6 46 7c 01          	testb  $0x1,0x7c(%esi)
45c57a:	75 18                	jne    0x45c594
45c57c:	8b be 8c 00 00 00    	mov    0x8c(%esi),%edi
45c582:	81 c7 94 00 00 00    	add    $0x94,%edi
45c588:	8d 75 c0             	lea    -0x40(%ebp),%esi
45c58b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45c58c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45c58d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45c58e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45c58f:	8b 75 f0             	mov    -0x10(%ebp),%esi
45c592:	33 ff                	xor    %edi,%edi
45c594:	8d 45 c0             	lea    -0x40(%ebp),%eax
45c597:	50                   	push   %eax
45c598:	ff 76 1c             	push   0x1c(%esi)
45c59b:	8d 45 80             	lea    -0x80(%ebp),%eax
45c59e:	50                   	push   %eax
45c59f:	e8 bc 6f fe ff       	call   0x443560
45c5a4:	8b 45 c4             	mov    -0x3c(%ebp),%eax
45c5a7:	2b 05 ec c3 4a 00    	sub    0x4ac3ec,%eax
45c5ad:	03 45 d4             	add    -0x2c(%ebp),%eax
45c5b0:	89 45 e4             	mov    %eax,-0x1c(%ebp)
45c5b3:	8b 45 d0             	mov    -0x30(%ebp),%eax
45c5b6:	39 45 f4             	cmp    %eax,-0xc(%ebp)
45c5b9:	7f 0c                	jg     0x45c5c7
45c5bb:	89 45 f4             	mov    %eax,-0xc(%ebp)
45c5be:	39 7d f8             	cmp    %edi,-0x8(%ebp)
45c5c1:	0f 85 c8 00 00 00    	jne    0x45c68f
45c5c7:	8b 06                	mov    (%esi),%eax
45c5c9:	8d 4d 80             	lea    -0x80(%ebp),%ecx
45c5cc:	51                   	push   %ecx
45c5cd:	8b ce                	mov    %esi,%ecx
45c5cf:	ff 90 54 01 00 00    	call   *0x154(%eax)
45c5d5:	e9 b5 00 00 00       	jmp    0x45c68f
45c5da:	8b 45 dc             	mov    -0x24(%ebp),%eax
45c5dd:	2b 05 ec c3 4a 00    	sub    0x4ac3ec,%eax
45c5e3:	39 45 c4             	cmp    %eax,-0x3c(%ebp)
45c5e6:	0f 8c 70 ff ff ff    	jl     0x45c55c
45c5ec:	8b 45 fc             	mov    -0x4(%ebp),%eax
45c5ef:	3b c7                	cmp    %edi,%eax
45c5f1:	0f 8e 65 ff ff ff    	jle    0x45c55c
45c5f7:	48                   	dec    %eax
45c5f8:	50                   	push   %eax
45c5f9:	8d 8b 94 00 00 00    	lea    0x94(%ebx),%ecx
45c5ff:	e8 61 9c fb ff       	call   0x416265
45c604:	39 38                	cmp    %edi,(%eax)
45c606:	0f 84 50 ff ff ff    	je     0x45c55c
45c60c:	33 f6                	xor    %esi,%esi
45c60e:	46                   	inc    %esi
45c60f:	56                   	push   %esi
45c610:	57                   	push   %edi
45c611:	ff 75 fc             	push   -0x4(%ebp)
45c614:	8d 8b 94 00 00 00    	lea    0x94(%ebx),%ecx
45c61a:	e8 56 08 fe ff       	call   0x43ce75
45c61f:	89 75 f8             	mov    %esi,-0x8(%ebp)
45c622:	eb 04                	jmp    0x45c628
45c624:	3b c7                	cmp    %edi,%eax
45c626:	75 67                	jne    0x45c68f
45c628:	8b 45 f4             	mov    -0xc(%ebp),%eax
45c62b:	3b c7                	cmp    %edi,%eax
45c62d:	74 60                	je     0x45c68f
45c62f:	39 7d 10             	cmp    %edi,0x10(%ebp)
45c632:	74 2d                	je     0x45c661
45c634:	2b 05 ec c3 4a 00    	sub    0x4ac3ec,%eax
45c63a:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
45c63d:	03 c8                	add    %eax,%ecx
45c63f:	8b 45 e0             	mov    -0x20(%ebp),%eax
45c642:	39 45 e8             	cmp    %eax,-0x18(%ebp)
45c645:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
45c648:	7f 03                	jg     0x45c64d
45c64a:	89 45 e8             	mov    %eax,-0x18(%ebp)
45c64d:	39 4d ec             	cmp    %ecx,-0x14(%ebp)
45c650:	7f 03                	jg     0x45c655
45c652:	89 4d ec             	mov    %ecx,-0x14(%ebp)
45c655:	a1 e8 c3 4a 00       	mov    0x4ac3e8,%eax
45c65a:	f7 d8                	neg    %eax
45c65c:	89 45 e0             	mov    %eax,-0x20(%ebp)
45c65f:	eb 2b                	jmp    0x45c68c
45c661:	2b 05 e8 c3 4a 00    	sub    0x4ac3e8,%eax
45c667:	8b 4d e0             	mov    -0x20(%ebp),%ecx
45c66a:	03 c8                	add    %eax,%ecx
45c66c:	39 4d e8             	cmp    %ecx,-0x18(%ebp)
45c66f:	89 4d e0             	mov    %ecx,-0x20(%ebp)
45c672:	7f 03                	jg     0x45c677
45c674:	89 4d e8             	mov    %ecx,-0x18(%ebp)
45c677:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45c67a:	39 45 ec             	cmp    %eax,-0x14(%ebp)
45c67d:	7f 03                	jg     0x45c682
45c67f:	89 45 ec             	mov    %eax,-0x14(%ebp)
45c682:	a1 ec c3 4a 00       	mov    0x4ac3ec,%eax
45c687:	f7 d8                	neg    %eax
45c689:	89 45 e4             	mov    %eax,-0x1c(%ebp)
45c68c:	89 7d f4             	mov    %edi,-0xc(%ebp)
45c68f:	ff 45 fc             	incl   -0x4(%ebp)
45c692:	8b 45 fc             	mov    -0x4(%ebp),%eax
45c695:	3b 83 9c 00 00 00    	cmp    0x9c(%ebx),%eax
45c69b:	0f 8c 9a fc ff ff    	jl     0x45c33b
45c6a1:	39 bb a8 00 00 00    	cmp    %edi,0xa8(%ebx)
45c6a7:	75 0e                	jne    0x45c6b7
45c6a9:	39 7d 80             	cmp    %edi,-0x80(%ebp)
45c6ac:	74 09                	je     0x45c6b7
45c6ae:	ff 75 80             	push   -0x80(%ebp)
45c6b1:	ff 15 c0 06 4b 00    	call   *0x4b06c0
45c6b7:	8d 45 a0             	lea    -0x60(%ebp),%eax
45c6ba:	50                   	push   %eax
45c6bb:	ff 15 3c 08 4b 00    	call   *0x4b083c
45c6c1:	ff 75 10             	push   0x10(%ebp)
45c6c4:	8b 03                	mov    (%ebx),%eax
45c6c6:	8d 4d a0             	lea    -0x60(%ebp),%ecx
45c6c9:	51                   	push   %ecx
45c6ca:	8b cb                	mov    %ebx,%ecx
45c6cc:	ff 90 3c 01 00 00    	call   *0x13c(%eax)
45c6d2:	39 7d 0c             	cmp    %edi,0xc(%ebp)
45c6d5:	74 05                	je     0x45c6dc
45c6d7:	39 7d 10             	cmp    %edi,0x10(%ebp)
45c6da:	75 0e                	jne    0x45c6ea