5a43b2:	89 57 04             	mov    %edx,0x4(%edi)
5a43b5:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a43b8:	89 47 08             	mov    %eax,0x8(%edi)
5a43bb:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a43be:	89 47 0c             	mov    %eax,0xc(%edi)
5a43c1:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a43c4:	d1 f8                	sar    $1,%eax
5a43c6:	79 03                	jns    0x5a43cb
5a43c8:	83 d0 00             	adc    $0x0,%eax
5a43cb:	40                   	inc    %eax
5a43cc:	89 45 cc             	mov    %eax,-0x34(%ebp)
5a43cf:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a43d2:	d1 f8                	sar    $1,%eax
5a43d4:	79 03                	jns    0x5a43d9
5a43d6:	83 d0 00             	adc    $0x0,%eax
5a43d9:	40                   	inc    %eax
5a43da:	89 45 d0             	mov    %eax,-0x30(%ebp)
5a43dd:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a43e0:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5a43e3:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a43e6:	89 45 d8             	mov    %eax,-0x28(%ebp)
5a43e9:	8d 45 cc             	lea    -0x34(%ebp),%eax
5a43ec:	50                   	push   %eax
5a43ed:	8b c6                	mov    %esi,%eax
5a43ef:	e8 a4 93 e8 ff       	call   0x42d798
5a43f4:	8b c8                	mov    %eax,%ecx
5a43f6:	8b d7                	mov    %edi,%edx
5a43f8:	8b c3                	mov    %ebx,%eax
5a43fa:	e8 4d 41 e8 ff       	call   0x42854c
5a43ff:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a4402:	d1 f8                	sar    $1,%eax
5a4404:	79 03                	jns    0x5a4409
5a4406:	83 d0 00             	adc    $0x0,%eax
5a4409:	8b 55 fc             	mov    -0x4(%ebp),%edx
5a440c:	2b d0                	sub    %eax,%edx
5a440e:	89 17                	mov    %edx,(%edi)
5a4410:	33 c0                	xor    %eax,%eax
5a4412:	89 47 04             	mov    %eax,0x4(%edi)
5a4415:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a4418:	89 47 08             	mov    %eax,0x8(%edi)
5a441b:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a441e:	d1 f8                	sar    $1,%eax
5a4420:	79 03                	jns    0x5a4425
5a4422:	83 d0 00             	adc    $0x0,%eax
5a4425:	40                   	inc    %eax
5a4426:	89 47 0c             	mov    %eax,0xc(%edi)
5a4429:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a442c:	d1 f8                	sar    $1,%eax
5a442e:	79 03                	jns    0x5a4433
5a4430:	83 d0 00             	adc    $0x0,%eax
5a4433:	40                   	inc    %eax
5a4434:	89 45 cc             	mov    %eax,-0x34(%ebp)
5a4437:	33 c0                	xor    %eax,%eax
5a4439:	89 45 d0             	mov    %eax,-0x30(%ebp)
5a443c:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a443f:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5a4442:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a4445:	d1 f8                	sar    $1,%eax
5a4447:	79 03                	jns    0x5a444c
5a4449:	83 d0 00             	adc    $0x0,%eax
5a444c:	40                   	inc    %eax
5a444d:	89 45 d8             	mov    %eax,-0x28(%ebp)
5a4450:	8d 45 cc             	lea    -0x34(%ebp),%eax
5a4453:	50                   	push   %eax
5a4454:	8b c6                	mov    %esi,%eax
5a4456:	e8 3d 93 e8 ff       	call   0x42d798
5a445b:	8b c8                	mov    %eax,%ecx
5a445d:	8b d7                	mov    %edi,%edx
5a445f:	8b c3                	mov    %ebx,%eax
5a4461:	e8 e6 40 e8 ff       	call   0x42854c
5a4466:	5f                   	pop    %edi
5a4467:	5e                   	pop    %esi
5a4468:	5b                   	pop    %ebx
5a4469:	8b e5                	mov    %ebp,%esp
5a446b:	5d                   	pop    %ebp
5a446c:	c2 0c 00             	ret    $0xc
5a446f:	90                   	nop
5a4470:	55                   	push   %ebp
5a4471:	8b ec                	mov    %esp,%ebp
5a4473:	83 c4 cc             	add    $0xffffffcc,%esp
5a4476:	53                   	push   %ebx
5a4477:	56                   	push   %esi
5a4478:	57                   	push   %edi
5a4479:	8b f1                	mov    %ecx,%esi
5a447b:	8b d8                	mov    %eax,%ebx
5a447d:	8d 7d dc             	lea    -0x24(%ebp),%edi
5a4480:	8d 45 fc             	lea    -0x4(%ebp),%eax
5a4483:	50                   	push   %eax
5a4484:	8d 45 f8             	lea    -0x8(%ebp),%eax
5a4487:	50                   	push   %eax
5a4488:	8d 45 f4             	lea    -0xc(%ebp),%eax
5a448b:	50                   	push   %eax
5a448c:	8d 45 f0             	lea    -0x10(%ebp),%eax
5a448f:	50                   	push   %eax
5a4490:	8d 45 ec             	lea    -0x14(%ebp),%eax
5a4493:	50                   	push   %eax
5a4494:	8b 45 10             	mov    0x10(%ebp),%eax
5a4497:	8b 4d 08             	mov    0x8(%ebp),%ecx
5a449a:	8b 55 0c             	mov    0xc(%ebp),%edx
5a449d:	e8 52 e2 ff ff       	call   0x5a26f4
5a44a2:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a44a5:	2b 45 fc             	sub    -0x4(%ebp),%eax
5a44a8:	d1 f8                	sar    $1,%eax
5a44aa:	79 03                	jns    0x5a44af
5a44ac:	83 d0 00             	adc    $0x0,%eax
5a44af:	89 07                	mov    %eax,(%edi)
5a44b1:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a44b4:	d1 f8                	sar    $1,%eax
5a44b6:	79 03                	jns    0x5a44bb
5a44b8:	83 d0 00             	adc    $0x0,%eax
5a44bb:	40                   	inc    %eax
5a44bc:	89 47 08             	mov    %eax,0x8(%edi)
5a44bf:	33 c0                	xor    %eax,%eax
5a44c1:	89 47 04             	mov    %eax,0x4(%edi)
5a44c4:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a44c7:	d1 f8                	sar    $1,%eax
5a44c9:	79 03                	jns    0x5a44ce
5a44cb:	83 d0 00             	adc    $0x0,%eax
5a44ce:	40                   	inc    %eax
5a44cf:	89 47 0c             	mov    %eax,0xc(%edi)
5a44d2:	33 d2                	xor    %edx,%edx
5a44d4:	89 55 cc             	mov    %edx,-0x34(%ebp)
5a44d7:	8b 55 fc             	mov    -0x4(%ebp),%edx
5a44da:	d1 fa                	sar    $1,%edx
5a44dc:	79 03                	jns    0x5a44e1
5a44de:	83 d2 00             	adc    $0x0,%edx
5a44e1:	42                   	inc    %edx
5a44e2:	89 55 d4             	mov    %edx,-0x2c(%ebp)
5a44e5:	33 d2                	xor    %edx,%edx
5a44e7:	89 55 d0             	mov    %edx,-0x30(%ebp)
5a44ea:	89 45 d8             	mov    %eax,-0x28(%ebp)
5a44ed:	8d 45 cc             	lea    -0x34(%ebp),%eax
5a44f0:	50                   	push   %eax
5a44f1:	8b c6                	mov    %esi,%eax
5a44f3:	e8 a0 92 e8 ff       	call   0x42d798
5a44f8:	8b c8                	mov    %eax,%ecx
5a44fa:	8b d7                	mov    %edi,%edx
5a44fc:	8b c3                	mov    %ebx,%eax
5a44fe:	e8 49 40 e8 ff       	call   0x42854c
5a4503:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a4506:	d1 f8                	sar    $1,%eax
5a4508:	79 03                	jns    0x5a450d
5a450a:	83 d0 00             	adc    $0x0,%eax
5a450d:	48                   	dec    %eax
5a450e:	89 07                	mov    %eax,(%edi)
5a4510:	8b 55 fc             	mov    -0x4(%ebp),%edx
5a4513:	89 57 08             	mov    %edx,0x8(%edi)
5a4516:	8b 55 f0             	mov    -0x10(%ebp),%edx
5a4519:	2b 55 f8             	sub    -0x8(%ebp),%edx
5a451c:	d1 fa                	sar    $1,%edx
5a451e:	79 03                	jns    0x5a4523
5a4520:	83 d2 00             	adc    $0x0,%edx
5a4523:	89 57 04             	mov    %edx,0x4(%edi)
5a4526:	8b 55 f0             	mov    -0x10(%ebp),%edx
5a4529:	d1 fa                	sar    $1,%edx
5a452b:	79 03                	jns    0x5a4530
5a452d:	83 d2 00             	adc    $0x0,%edx
5a4530:	42                   	inc    %edx
5a4531:	89 57 0c             	mov    %edx,0xc(%edi)
5a4534:	89 45 cc             	mov    %eax,-0x34(%ebp)
5a4537:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a453a:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5a453d:	33 c0                	xor    %eax,%eax
5a453f:	89 45 d0             	mov    %eax,-0x30(%ebp)
5a4542:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a4545:	d1 f8                	sar    $1,%eax
5a4547:	79 03                	jns    0x5a454c
5a4549:	83 d0 00             	adc    $0x0,%eax
5a454c:	40                   	inc    %eax
5a454d:	89 45 d8             	mov    %eax,-0x28(%ebp)
5a4550:	8d 45 cc             	lea    -0x34(%ebp),%eax
5a4553:	50                   	push   %eax
5a4554:	8b c6                	mov    %esi,%eax
5a4556:	e8 3d 92 e8 ff       	call   0x42d798
5a455b:	8b c8                	mov    %eax,%ecx
5a455d:	8b d7                	mov    %edi,%edx
5a455f:	8b c3                	mov    %ebx,%eax
5a4561:	e8 e6 3f e8 ff       	call   0x42854c
5a4566:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a4569:	d1 f8                	sar    $1,%eax
5a456b:	79 03                	jns    0x5a4570
5a456d:	83 d0 00             	adc    $0x0,%eax
5a4570:	8b 55 fc             	mov    -0x4(%ebp),%edx
5a4573:	2b d0                	sub    %eax,%edx
5a4575:	89 17                	mov    %edx,(%edi)
5a4577:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a457a:	2b 45 f4             	sub    -0xc(%ebp),%eax
5a457d:	d1 f8                	sar    $1,%eax
5a457f:	79 03                	jns    0x5a4584
5a4581:	83 d0 00             	adc    $0x0,%eax
5a4584:	03 45 fc             	add    -0x4(%ebp),%eax
5a4587:	89 47 08             	mov    %eax,0x8(%edi)
5a458a:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a458d:	d1 f8                	sar    $1,%eax
5a458f:	79 03                	jns    0x5a4594
5a4591:	83 d0 00             	adc    $0x0,%eax
5a4594:	48                   	dec    %eax
5a4595:	89 47 04             	mov    %eax,0x4(%edi)
5a4598:	8b 55 f8             	mov    -0x8(%ebp),%edx
5a459b:	89 57 0c             	mov    %edx,0xc(%edi)
5a459e:	8b 55 fc             	mov    -0x4(%ebp),%edx
5a45a1:	d1 fa                	sar    $1,%edx
5a45a3:	79 03                	jns    0x5a45a8
5a45a5:	83 d2 00             	adc    $0x0,%edx
5a45a8:	42                   	inc    %edx
5a45a9:	89 55 cc             	mov    %edx,-0x34(%ebp)
5a45ac:	8b 55 fc             	mov    -0x4(%ebp),%edx
5a45af:	89 55 d4             	mov    %edx,-0x2c(%ebp)
5a45b2:	89 45 d0             	mov    %eax,-0x30(%ebp)
5a45b5:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a45b8:	89 45 d8             	mov    %eax,-0x28(%ebp)
5a45bb:	8d 45 cc             	lea    -0x34(%ebp),%eax
5a45be:	50                   	push   %eax
5a45bf:	8b c6                	mov    %esi,%eax
5a45c1:	e8 d2 91 e8 ff       	call   0x42d798
5a45c6:	8b c8                	mov    %eax,%ecx
5a45c8:	8b d7                	mov    %edi,%edx
5a45ca:	8b c3                	mov    %ebx,%eax
5a45cc:	e8 7b 3f e8 ff       	call   0x42854c
5a45d1:	33 c0                	xor    %eax,%eax
5a45d3:	89 07                	mov    %eax,(%edi)
5a45d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a45d8:	d1 f8                	sar    $1,%eax
5a45da:	79 03                	jns    0x5a45df
5a45dc:	83 d0 00             	adc    $0x0,%eax
5a45df:	40                   	inc    %eax
5a45e0:	89 47 08             	mov    %eax,0x8(%edi)
5a45e3:	8b 55 f0             	mov    -0x10(%ebp),%edx
5a45e6:	d1 fa                	sar    $1,%edx
5a45e8:	79 03                	jns    0x5a45ed
5a45ea:	83 d2 00             	adc    $0x0,%edx
5a45ed:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5a45f0:	2b ca                	sub    %edx,%ecx
5a45f2:	89 4f 04             	mov    %ecx,0x4(%edi)
5a45f5:	8b 55 f8             	mov    -0x8(%ebp),%edx
5a45f8:	2b 55 f0             	sub    -0x10(%ebp),%edx
5a45fb:	d1 fa                	sar    $1,%edx
5a45fd:	79 03                	jns    0x5a4602
5a45ff:	83 d2 00             	adc    $0x0,%edx
5a4602:	03 55 f8             	add    -0x8(%ebp),%edx
5a4605:	89 57 0c             	mov    %edx,0xc(%edi)
5a4608:	33 d2                	xor    %edx,%edx
5a460a:	89 55 cc             	mov    %edx,-0x34(%ebp)
5a460d:	89 45 d4             	mov    %eax,-0x2c(%ebp)
5a4610:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a4613:	d1 f8                	sar    $1,%eax
5a4615:	79 03                	jns    0x5a461a
5a4617:	83 d0 00             	adc    $0x0,%eax
5a461a:	40                   	inc    %eax
5a461b:	89 45 d0             	mov    %eax,-0x30(%ebp)
5a461e:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a4621:	89 45 d8             	mov    %eax,-0x28(%ebp)
5a4624:	8d 45 cc             	lea    -0x34(%ebp),%eax
5a4627:	50                   	push   %eax
5a4628:	8b c6                	mov    %esi,%eax
5a462a:	e8 69 91 e8 ff       	call   0x42d798
5a462f:	8b c8                	mov    %eax,%ecx
5a4631:	8b d7                	mov    %edi,%edx
5a4633:	8b c3                	mov    %ebx,%eax
5a4635:	e8 12 3f e8 ff       	call   0x42854c
5a463a:	5f                   	pop    %edi
5a463b:	5e                   	pop    %esi
5a463c:	5b                   	pop    %ebx
5a463d:	8b e5                	mov    %ebp,%esp
5a463f:	5d                   	pop    %ebp
5a4640:	c2 0c 00             	ret    $0xc
5a4643:	90                   	nop
5a4644:	55                   	push   %ebp
5a4645:	8b ec                	mov    %esp,%ebp
5a4647:	83 c4 e8             	add    $0xffffffe8,%esp
5a464a:	53                   	push   %ebx
5a464b:	56                   	push   %esi
5a464c:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5a464f:	8b d8                	mov    %eax,%ebx
5a4651:	8d 45 f8             	lea    -0x8(%ebp),%eax
5a4654:	50                   	push   %eax
5a4655:	8d 45 f4             	lea    -0xc(%ebp),%eax
5a4658:	50                   	push   %eax
5a4659:	8d 45 f0             	lea    -0x10(%ebp),%eax
5a465c:	50                   	push   %eax
5a465d:	8d 45 ec             	lea    -0x14(%ebp),%eax
5a4660:	50                   	push   %eax
5a4661:	8d 45 e8             	lea    -0x18(%ebp),%eax
5a4664:	50                   	push   %eax
5a4665:	8b 45 10             	mov    0x10(%ebp),%eax
5a4668:	8b 4d 08             	mov    0x8(%ebp),%ecx
5a466b:	8b 55 0c             	mov    0xc(%ebp),%edx
5a466e:	e8 81 e0 ff ff       	call   0x5a26f4
5a4673:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a4676:	03 c0                	add    %eax,%eax
5a4678:	50                   	push   %eax
5a4679:	50                   	push   %eax
5a467a:	8b 55 f4             	mov    -0xc(%ebp),%edx
5a467d:	83 c2 05             	add    $0x5,%edx
5a4680:	52                   	push   %edx
5a4681:	8b 55 f0             	mov    -0x10(%ebp),%edx
5a4684:	03 d2                	add    %edx,%edx
5a4686:	52                   	push   %edx
5a4687:	6a fb                	push   $0xfffffffb
5a4689:	f7 d8                	neg    %eax
5a468b:	50                   	push   %eax
5a468c:	e8 5f 2e e6 ff       	call   0x4074f0
5a4691:	8b f0                	mov    %eax,%esi
5a4693:	56                   	push   %esi
5a4694:	8b c3                	mov    %ebx,%eax
5a4696:	e8 25 46 e8 ff       	call   0x428cc0
5a469b:	50                   	push   %eax
5a469c:	e8 57 30 e6 ff       	call   0x4076f8
5a46a1:	56                   	push   %esi
5a46a2:	e8 69 2e e6 ff       	call   0x407510
5a46a7:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a46aa:	50                   	push   %eax
5a46ab:	33 c9                	xor    %ecx,%ecx
5a46ad:	33 d2                	xor    %edx,%edx
5a46af:	8b c3                	mov    %ebx,%eax
5a46b1:	e8 1e 3f e8 ff       	call   0x4285d4
5a46b6:	6a 00                	push   $0x0
5a46b8:	8b c3                	mov    %ebx,%eax
5a46ba:	e8 01 46 e8 ff       	call   0x428cc0
5a46bf:	50                   	push   %eax
5a46c0:	e8 33 30 e6 ff       	call   0x4076f8
5a46c5:	5e                   	pop    %esi
5a46c6:	5b                   	pop    %ebx
5a46c7:	8b e5                	mov    %ebp,%esp
5a46c9:	5d                   	pop    %ebp
5a46ca:	c2 0c 00             	ret    $0xc
5a46cd:	8d 40 00             	lea    0x0(%eax),%eax
5a46d0:	55                   	push   %ebp
5a46d1:	8b ec                	mov    %esp,%ebp
5a46d3:	83 c4 e8             	add    $0xffffffe8,%esp
5a46d6:	53                   	push   %ebx
5a46d7:	56                   	push   %esi
5a46d8:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5a46db:	8b d8                	mov    %eax,%ebx
5a46dd:	8d 45 f8             	lea    -0x8(%ebp),%eax
5a46e0:	50                   	push   %eax
5a46e1:	8d 45 f4             	lea    -0xc(%ebp),%eax
5a46e4:	50                   	push   %eax
5a46e5:	8d 45 f0             	lea    -0x10(%ebp),%eax
5a46e8:	50                   	push   %eax
5a46e9:	8d 45 ec             	lea    -0x14(%ebp),%eax
5a46ec:	50                   	push   %eax
5a46ed:	8d 45 e8             	lea    -0x18(%ebp),%eax
5a46f0:	50                   	push   %eax
5a46f1:	8b 45 10             	mov    0x10(%ebp),%eax
5a46f4:	8b 4d 08             	mov    0x8(%ebp),%ecx
5a46f7:	8b 55 0c             	mov    0xc(%ebp),%edx
5a46fa:	e8 f5 df ff ff       	call   0x5a26f4
5a46ff:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a4702:	03 c0                	add    %eax,%eax