4ad28c:	53                   	push   %ebx
4ad28d:	e8 3e 5b 12 00       	call   0x5d2dd0
4ad292:	83 c4 0c             	add    $0xc,%esp
4ad295:	03 df                	add    %edi,%ebx
4ad297:	eb 26                	jmp    0x4ad2bf
4ad299:	8b 06                	mov    (%esi),%eax
4ad29b:	83 c6 04             	add    $0x4,%esi
4ad29e:	89 03                	mov    %eax,(%ebx)
4ad2a0:	3b 75 f4             	cmp    -0xc(%ebp),%esi
4ad2a3:	74 05                	je     0x4ad2aa
4ad2a5:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4ad2a8:	eb b6                	jmp    0x4ad260
4ad2aa:	8b 75 f8             	mov    -0x8(%ebp),%esi
4ad2ad:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4ad2b0:	2b f7                	sub    %edi,%esi
4ad2b2:	56                   	push   %esi
4ad2b3:	57                   	push   %edi
4ad2b4:	53                   	push   %ebx
4ad2b5:	e8 16 5b 12 00       	call   0x5d2dd0
4ad2ba:	83 c4 0c             	add    $0xc,%esp
4ad2bd:	03 de                	add    %esi,%ebx
4ad2bf:	8b 55 ec             	mov    -0x14(%ebp),%edx
4ad2c2:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4ad2c5:	8b f1                	mov    %ecx,%esi
4ad2c7:	83 fa 20             	cmp    $0x20,%edx
4ad2ca:	0f 8f 60 ff ff ff    	jg     0x4ad230
4ad2d0:	8b 45 0c             	mov    0xc(%ebp),%eax
4ad2d3:	2b c1                	sub    %ecx,%eax
4ad2d5:	50                   	push   %eax
4ad2d6:	51                   	push   %ecx
4ad2d7:	53                   	push   %ebx
4ad2d8:	e8 f3 5a 12 00       	call   0x5d2dd0
4ad2dd:	ff 75 18             	push   0x18(%ebp)
4ad2e0:	8b 5d 10             	mov    0x10(%ebp),%ebx
4ad2e3:	8b 45 14             	mov    0x14(%ebp),%eax
4ad2e6:	53                   	push   %ebx
4ad2e7:	6a 40                	push   $0x40
4ad2e9:	ff 75 08             	push   0x8(%ebp)
4ad2ec:	8d 3c 98             	lea    (%eax,%ebx,4),%edi
4ad2ef:	57                   	push   %edi
4ad2f0:	50                   	push   %eax
4ad2f1:	e8 4a 00 00 00       	call   0x4ad340
4ad2f6:	be 80 00 00 00       	mov    $0x80,%esi
4ad2fb:	83 c4 24             	add    $0x24,%esp
4ad2fe:	3b de                	cmp    %esi,%ebx
4ad300:	7e 2f                	jle    0x4ad331
4ad302:	ff 75 18             	push   0x18(%ebp)
4ad305:	53                   	push   %ebx
4ad306:	56                   	push   %esi
4ad307:	ff 75 14             	push   0x14(%ebp)
4ad30a:	ff 75 0c             	push   0xc(%ebp)
4ad30d:	ff 75 08             	push   0x8(%ebp)
4ad310:	e8 2b 00 00 00       	call   0x4ad340
4ad315:	ff 75 18             	push   0x18(%ebp)
4ad318:	03 f6                	add    %esi,%esi
4ad31a:	53                   	push   %ebx
4ad31b:	56                   	push   %esi
4ad31c:	ff 75 08             	push   0x8(%ebp)
4ad31f:	57                   	push   %edi
4ad320:	ff 75 14             	push   0x14(%ebp)
4ad323:	e8 18 00 00 00       	call   0x4ad340
4ad328:	03 f6                	add    %esi,%esi
4ad32a:	83 c4 30             	add    $0x30,%esp
4ad32d:	3b de                	cmp    %esi,%ebx
4ad32f:	7f d1                	jg     0x4ad302
4ad331:	5f                   	pop    %edi
4ad332:	5e                   	pop    %esi
4ad333:	5b                   	pop    %ebx
4ad334:	8b e5                	mov    %ebp,%esp
4ad336:	5d                   	pop    %ebp
4ad337:	c3                   	ret
4ad338:	cc                   	int3
4ad339:	cc                   	int3
4ad33a:	cc                   	int3
4ad33b:	cc                   	int3
4ad33c:	cc                   	int3
4ad33d:	cc                   	int3
4ad33e:	cc                   	int3
4ad33f:	cc                   	int3
4ad340:	55                   	push   %ebp
4ad341:	8b ec                	mov    %esp,%ebp
4ad343:	8b 55 18             	mov    0x18(%ebp),%edx
4ad346:	83 ec 08             	sub    $0x8,%esp
4ad349:	53                   	push   %ebx
4ad34a:	8b 5d 10             	mov    0x10(%ebp),%ebx
4ad34d:	56                   	push   %esi
4ad34e:	8b 75 08             	mov    0x8(%ebp),%esi
4ad351:	57                   	push   %edi
4ad352:	8b 7d 14             	mov    0x14(%ebp),%edi
4ad355:	3b fa                	cmp    %edx,%edi
4ad357:	0f 8d 97 00 00 00    	jge    0x4ad3f4
4ad35d:	0f 1f 00             	nopl   (%eax)
4ad360:	2b d7                	sub    %edi,%edx
4ad362:	8d 0c be             	lea    (%esi,%edi,4),%ecx
4ad365:	3b d7                	cmp    %edi,%edx
4ad367:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4ad36a:	8b c7                	mov    %edi,%eax
4ad36c:	0f 4c c2             	cmovl  %edx,%eax
4ad36f:	2b d0                	sub    %eax,%edx
4ad371:	03 c7                	add    %edi,%eax
4ad373:	89 55 18             	mov    %edx,0x18(%ebp)
4ad376:	8b f9                	mov    %ecx,%edi
4ad378:	8d 04 86             	lea    (%esi,%eax,4),%eax
4ad37b:	89 45 08             	mov    %eax,0x8(%ebp)
4ad37e:	8b 45 1c             	mov    0x1c(%ebp),%eax
4ad381:	89 45 f8             	mov    %eax,-0x8(%ebp)
4ad384:	ff 36                	push   (%esi)
4ad386:	8d 43 04             	lea    0x4(%ebx),%eax
4ad389:	ff 37                	push   (%edi)
4ad38b:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4ad38e:	89 45 10             	mov    %eax,0x10(%ebp)
4ad391:	e8 8a 1e 00 00       	call   0x4af220
4ad396:	84 c0                	test   %al,%al
4ad398:	74 23                	je     0x4ad3bd
4ad39a:	8b 07                	mov    (%edi),%eax
4ad39c:	83 c7 04             	add    $0x4,%edi
4ad39f:	89 03                	mov    %eax,(%ebx)
4ad3a1:	3b 7d 08             	cmp    0x8(%ebp),%edi
4ad3a4:	75 23                	jne    0x4ad3c9
4ad3a6:	8b 7d fc             	mov    -0x4(%ebp),%edi
4ad3a9:	8b 5d 10             	mov    0x10(%ebp),%ebx
4ad3ac:	2b fe                	sub    %esi,%edi
4ad3ae:	57                   	push   %edi
4ad3af:	56                   	push   %esi
4ad3b0:	53                   	push   %ebx
4ad3b1:	e8 1a 5a 12 00       	call   0x5d2dd0
4ad3b6:	83 c4 0c             	add    $0xc,%esp
4ad3b9:	03 df                	add    %edi,%ebx
4ad3bb:	eb 26                	jmp    0x4ad3e3
4ad3bd:	8b 06                	mov    (%esi),%eax
4ad3bf:	83 c6 04             	add    $0x4,%esi
4ad3c2:	89 03                	mov    %eax,(%ebx)
4ad3c4:	3b 75 fc             	cmp    -0x4(%ebp),%esi
4ad3c7:	74 05                	je     0x4ad3ce
4ad3c9:	8b 5d 10             	mov    0x10(%ebp),%ebx
4ad3cc:	eb b6                	jmp    0x4ad384
4ad3ce:	8b 75 08             	mov    0x8(%ebp),%esi
4ad3d1:	8b 5d 10             	mov    0x10(%ebp),%ebx
4ad3d4:	2b f7                	sub    %edi,%esi
4ad3d6:	56                   	push   %esi
4ad3d7:	57                   	push   %edi
4ad3d8:	53                   	push   %ebx
4ad3d9:	e8 f2 59 12 00       	call   0x5d2dd0
4ad3de:	83 c4 0c             	add    $0xc,%esp
4ad3e1:	03 de                	add    %esi,%ebx
4ad3e3:	8b 55 18             	mov    0x18(%ebp),%edx
4ad3e6:	8b 7d 14             	mov    0x14(%ebp),%edi
4ad3e9:	8b 75 08             	mov    0x8(%ebp),%esi
4ad3ec:	3b fa                	cmp    %edx,%edi
4ad3ee:	0f 8c 6c ff ff ff    	jl     0x4ad360
4ad3f4:	8b 45 0c             	mov    0xc(%ebp),%eax
4ad3f7:	2b c6                	sub    %esi,%eax
4ad3f9:	50                   	push   %eax
4ad3fa:	56                   	push   %esi
4ad3fb:	53                   	push   %ebx
4ad3fc:	e8 cf 59 12 00       	call   0x5d2dd0
4ad401:	83 c4 0c             	add    $0xc,%esp
4ad404:	5f                   	pop    %edi
4ad405:	5e                   	pop    %esi
4ad406:	5b                   	pop    %ebx
4ad407:	8b e5                	mov    %ebp,%esp
4ad409:	5d                   	pop    %ebp
4ad40a:	c3                   	ret
4ad40b:	cc                   	int3
4ad40c:	cc                   	int3
4ad40d:	cc                   	int3
4ad40e:	cc                   	int3
4ad40f:	cc                   	int3
4ad410:	55                   	push   %ebp
4ad411:	8b ec                	mov    %esp,%ebp
4ad413:	8b 45 0c             	mov    0xc(%ebp),%eax
4ad416:	56                   	push   %esi
4ad417:	8b 75 08             	mov    0x8(%ebp),%esi
4ad41a:	3b f0                	cmp    %eax,%esi
4ad41c:	74 52                	je     0x4ad470
4ad41e:	53                   	push   %ebx
4ad41f:	57                   	push   %edi
4ad420:	8b 1e                	mov    (%esi),%ebx
4ad422:	85 db                	test   %ebx,%ebx
4ad424:	74 41                	je     0x4ad467
4ad426:	8b 43 08             	mov    0x8(%ebx),%eax
4ad429:	8d 7b 08             	lea    0x8(%ebx),%edi
4ad42c:	8b cf                	mov    %edi,%ecx
4ad42e:	ff 70 04             	push   0x4(%eax)
4ad431:	57                   	push   %edi
4ad432:	e8 49 02 00 00       	call   0x4ad680
4ad437:	6a 20                	push   $0x20
4ad439:	ff 37                	push   (%edi)
4ad43b:	e8 15 3e 12 00       	call   0x5d1255
4ad440:	8b 03                	mov    (%ebx),%eax
4ad442:	83 c4 08             	add    $0x8,%esp
4ad445:	8b cb                	mov    %ebx,%ecx
4ad447:	ff 70 04             	push   0x4(%eax)
4ad44a:	53                   	push   %ebx
4ad44b:	e8 e0 01 00 00       	call   0x4ad630
4ad450:	6a 20                	push   $0x20
4ad452:	ff 33                	push   (%ebx)
4ad454:	e8 fc 3d 12 00       	call   0x5d1255
4ad459:	6a 10                	push   $0x10
4ad45b:	53                   	push   %ebx
4ad45c:	e8 f4 3d 12 00       	call   0x5d1255
4ad461:	8b 45 0c             	mov    0xc(%ebp),%eax
4ad464:	83 c4 10             	add    $0x10,%esp
4ad467:	83 c6 04             	add    $0x4,%esi
4ad46a:	3b f0                	cmp    %eax,%esi
4ad46c:	75 b2                	jne    0x4ad420
4ad46e:	5f                   	pop    %edi
4ad46f:	5b                   	pop    %ebx
4ad470:	5e                   	pop    %esi
4ad471:	5d                   	pop    %ebp
4ad472:	c3                   	ret
4ad473:	cc                   	int3
4ad474:	cc                   	int3
4ad475:	cc                   	int3
4ad476:	cc                   	int3
4ad477:	cc                   	int3
4ad478:	cc                   	int3
4ad479:	cc                   	int3
4ad47a:	cc                   	int3
4ad47b:	cc                   	int3
4ad47c:	cc                   	int3
4ad47d:	cc                   	int3
4ad47e:	cc                   	int3
4ad47f:	cc                   	int3
4ad480:	55                   	push   %ebp
4ad481:	8b ec                	mov    %esp,%ebp
4ad483:	83 ec 08             	sub    $0x8,%esp
4ad486:	53                   	push   %ebx
4ad487:	56                   	push   %esi
4ad488:	8b 75 08             	mov    0x8(%ebp),%esi
4ad48b:	8b c6                	mov    %esi,%eax
4ad48d:	57                   	push   %edi
4ad48e:	8b f9                	mov    %ecx,%edi
4ad490:	8b 0f                	mov    (%edi),%ecx
4ad492:	2b c1                	sub    %ecx,%eax
4ad494:	c1 f8 02             	sar    $0x2,%eax
4ad497:	89 45 08             	mov    %eax,0x8(%ebp)
4ad49a:	8b 47 04             	mov    0x4(%edi),%eax
4ad49d:	2b c1                	sub    %ecx,%eax
4ad49f:	c1 f8 02             	sar    $0x2,%eax
4ad4a2:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
4ad4a7:	0f 84 77 01 00 00    	je     0x4ad624
4ad4ad:	8b 57 08             	mov    0x8(%edi),%edx
4ad4b0:	8d 58 01             	lea    0x1(%eax),%ebx
4ad4b3:	2b d1                	sub    %ecx,%edx
4ad4b5:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4ad4b8:	c1 fa 02             	sar    $0x2,%edx
4ad4bb:	b8 ff ff ff 3f       	mov    $0x3fffffff,%eax
4ad4c0:	8b ca                	mov    %edx,%ecx
4ad4c2:	d1 e9                	shr    $1,%ecx
4ad4c4:	2b c1                	sub    %ecx,%eax
4ad4c6:	3b d0                	cmp    %eax,%edx
4ad4c8:	0f 87 51 01 00 00    	ja     0x4ad61f
4ad4ce:	8d 04 11             	lea    (%ecx,%edx,1),%eax
4ad4d1:	8b cb                	mov    %ebx,%ecx
4ad4d3:	3b c3                	cmp    %ebx,%eax
4ad4d5:	0f 43 c8             	cmovae %eax,%ecx
4ad4d8:	81 f9 ff ff ff 3f    	cmp    $0x3fffffff,%ecx
4ad4de:	0f 87 3b 01 00 00    	ja     0x4ad61f
4ad4e4:	c1 e1 02             	shl    $0x2,%ecx
4ad4e7:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4ad4ea:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4ad4f0:	72 27                	jb     0x4ad519
4ad4f2:	8d 41 23             	lea    0x23(%ecx),%eax
4ad4f5:	3b c1                	cmp    %ecx,%eax
4ad4f7:	0f 86 22 01 00 00    	jbe    0x4ad61f
4ad4fd:	50                   	push   %eax
4ad4fe:	e8 22 3d 12 00       	call   0x5d1225
4ad503:	83 c4 04             	add    $0x4,%esp
4ad506:	85 c0                	test   %eax,%eax
4ad508:	0f 84 1b 01 00 00    	je     0x4ad629
4ad50e:	8d 58 23             	lea    0x23(%eax),%ebx
4ad511:	83 e3 e0             	and    $0xffffffe0,%ebx
4ad514:	89 43 fc             	mov    %eax,-0x4(%ebx)
4ad517:	eb 13                	jmp    0x4ad52c
4ad519:	85 c9                	test   %ecx,%ecx
4ad51b:	74 0d                	je     0x4ad52a
4ad51d:	51                   	push   %ecx
4ad51e:	e8 02 3d 12 00       	call   0x5d1225
4ad523:	83 c4 04             	add    $0x4,%esp
4ad526:	8b d8                	mov    %eax,%ebx
4ad528:	eb 02                	jmp    0x4ad52c
4ad52a:	33 db                	xor    %ebx,%ebx
4ad52c:	8b 45 08             	mov    0x8(%ebp),%eax
4ad52f:	8b d3                	mov    %ebx,%edx
4ad531:	8d 0c 83             	lea    (%ebx,%eax,4),%ecx
4ad534:	8b 45 0c             	mov    0xc(%ebp),%eax
4ad537:	89 4d 08             	mov    %ecx,0x8(%ebp)
4ad53a:	8b 00                	mov    (%eax),%eax
4ad53c:	89 01                	mov    %eax,(%ecx)
4ad53e:	8b 47 04             	mov    0x4(%edi),%eax
4ad541:	8b 0f                	mov    (%edi),%ecx
4ad543:	3b f0                	cmp    %eax,%esi
4ad545:	75 1f                	jne    0x4ad566
4ad547:	8b f0                	mov    %eax,%esi
4ad549:	3b ce                	cmp    %esi,%ecx
4ad54b:	74 67                	je     0x4ad5b4
4ad54d:	0f 1f 00             	nopl   (%eax)
4ad550:	8b 01                	mov    (%ecx),%eax
4ad552:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
4ad558:	83 c1 04             	add    $0x4,%ecx
4ad55b:	89 02                	mov    %eax,(%edx)
4ad55d:	83 c2 04             	add    $0x4,%edx
4ad560:	3b ce                	cmp    %esi,%ecx
4ad562:	75 ec                	jne    0x4ad550
4ad564:	eb 4e                	jmp    0x4ad5b4
4ad566:	3b ce                	cmp    %esi,%ecx
4ad568:	74 1a                	je     0x4ad584
4ad56a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
4ad570:	8b 01                	mov    (%ecx),%eax
4ad572:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
4ad578:	83 c1 04             	add    $0x4,%ecx
4ad57b:	89 02                	mov    %eax,(%edx)
4ad57d:	83 c2 04             	add    $0x4,%edx
4ad580:	3b ce                	cmp    %esi,%ecx
4ad582:	75 ec                	jne    0x4ad570
4ad584:	57                   	push   %edi
4ad585:	52                   	push   %edx
4ad586:	52                   	push   %edx
4ad587:	e8 84 fe ff ff       	call   0x4ad410
4ad58c:	8b 55 08             	mov    0x8(%ebp),%edx
4ad58f:	83 c4 0c             	add    $0xc,%esp
4ad592:	8b 4f 04             	mov    0x4(%edi),%ecx
4ad595:	83 c2 04             	add    $0x4,%edx
4ad598:	3b f1                	cmp    %ecx,%esi
4ad59a:	74 18                	je     0x4ad5b4
4ad59c:	0f 1f 40 00          	nopl   0x0(%eax)
4ad5a0:	8b 06                	mov    (%esi),%eax
4ad5a2:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
4ad5a8:	83 c6 04             	add    $0x4,%esi
4ad5ab:	89 02                	mov    %eax,(%edx)
4ad5ad:	83 c2 04             	add    $0x4,%edx
4ad5b0:	3b f1                	cmp    %ecx,%esi
4ad5b2:	75 ec                	jne    0x4ad5a0
4ad5b4:	57                   	push   %edi
4ad5b5:	52                   	push   %edx
4ad5b6:	52                   	push   %edx
4ad5b7:	e8 54 fe ff ff       	call   0x4ad410
4ad5bc:	8b 07                	mov    (%edi),%eax
4ad5be:	83 c4 0c             	add    $0xc,%esp
4ad5c1:	85 c0                	test   %eax,%eax
4ad5c3:	74 3b                	je     0x4ad600
4ad5c5:	57                   	push   %edi
4ad5c6:	ff 77 04             	push   0x4(%edi)
4ad5c9:	50                   	push   %eax
4ad5ca:	e8 41 fe ff ff       	call   0x4ad410
4ad5cf:	8b 4f 08             	mov    0x8(%edi),%ecx
4ad5d2:	83 c4 0c             	add    $0xc,%esp
4ad5d5:	8b 07                	mov    (%edi),%eax
4ad5d7:	2b c8                	sub    %eax,%ecx