944281:	e8 01 a9 ad ff       	call   0x41eb87
944286:	ff 75 1c             	push   0x1c(%ebp)
944289:	8b 1b                	mov    (%ebx),%ebx
94428b:	8d 75 0c             	lea    0xc(%ebp),%esi
94428e:	83 ec 10             	sub    $0x10,%esp
944291:	8b fc                	mov    %esp,%edi
944293:	8b 4b 60             	mov    0x60(%ebx),%ecx
944296:	a5                   	movsl  %ds:(%esi),%es:(%edi)
944297:	a5                   	movsl  %ds:(%esi),%es:(%edi)
944298:	a5                   	movsl  %ds:(%esi),%es:(%edi)
944299:	a5                   	movsl  %ds:(%esi),%es:(%edi)
94429a:	e8 c6 83 ae ff       	call   0x42c665
94429f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
9442a2:	ff 53 60             	call   *0x60(%ebx)
9442a5:	8d 4d ff             	lea    -0x1(%ebp),%ecx
9442a8:	8b f0                	mov    %eax,%esi
9442aa:	e8 a5 df ae ff       	call   0x432254
9442af:	5f                   	pop    %edi
9442b0:	8b c6                	mov    %esi,%eax
9442b2:	5e                   	pop    %esi
9442b3:	5b                   	pop    %ebx
9442b4:	8b e5                	mov    %ebp,%esp
9442b6:	5d                   	pop    %ebp
9442b7:	c2 18 00             	ret    $0x18
9442ba:	cc                   	int3
9442bb:	cc                   	int3
9442bc:	cc                   	int3
9442bd:	cc                   	int3
9442be:	cc                   	int3
9442bf:	cc                   	int3
9442c0:	cc                   	int3
9442c1:	cc                   	int3
9442c2:	cc                   	int3
9442c3:	cc                   	int3
9442c4:	cc                   	int3
9442c5:	cc                   	int3
9442c6:	cc                   	int3
9442c7:	cc                   	int3
9442c8:	cc                   	int3
9442c9:	cc                   	int3
9442ca:	cc                   	int3
9442cb:	cc                   	int3
9442cc:	cc                   	int3
9442cd:	cc                   	int3
9442ce:	33 c0                	xor    %eax,%eax
9442d0:	40                   	inc    %eax
9442d1:	c2 14 00             	ret    $0x14
9442d4:	55                   	push   %ebp
9442d5:	8b ec                	mov    %esp,%ebp
9442d7:	51                   	push   %ecx
9442d8:	53                   	push   %ebx
9442d9:	8b 5d 08             	mov    0x8(%ebp),%ebx
9442dc:	8d 4d ff             	lea    -0x1(%ebp),%ecx
9442df:	56                   	push   %esi
9442e0:	57                   	push   %edi
9442e1:	ff 73 c0             	push   -0x40(%ebx)
9442e4:	e8 9e a8 ad ff       	call   0x41eb87
9442e9:	ff 75 1c             	push   0x1c(%ebp)
9442ec:	8b 43 a4             	mov    -0x5c(%ebx),%eax
9442ef:	8d 75 0c             	lea    0xc(%ebp),%esi
9442f2:	83 ec 10             	sub    $0x10,%esp
9442f5:	8b fc                	mov    %esp,%edi
9442f7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
9442f8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
9442f9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
9442fa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
9442fb:	8b b0 9c 00 00 00    	mov    0x9c(%eax),%esi
944301:	8b ce                	mov    %esi,%ecx
944303:	e8 5d 83 ae ff       	call   0x42c665
944308:	8d 4b a4             	lea    -0x5c(%ebx),%ecx
94430b:	ff d6                	call   *%esi
94430d:	8d 4d ff             	lea    -0x1(%ebp),%ecx
944310:	8b f0                	mov    %eax,%esi
944312:	e8 3d df ae ff       	call   0x432254
944317:	5f                   	pop    %edi
944318:	8b c6                	mov    %esi,%eax
94431a:	5e                   	pop    %esi
94431b:	5b                   	pop    %ebx
94431c:	8b e5                	mov    %ebp,%esp
94431e:	5d                   	pop    %ebp
94431f:	c2 18 00             	ret    $0x18
944322:	cc                   	int3
944323:	cc                   	int3
944324:	cc                   	int3
944325:	cc                   	int3
944326:	cc                   	int3
944327:	cc                   	int3
944328:	cc                   	int3
944329:	cc                   	int3
94432a:	cc                   	int3
94432b:	cc                   	int3
94432c:	cc                   	int3
94432d:	cc                   	int3
94432e:	cc                   	int3
94432f:	cc                   	int3
944330:	cc                   	int3
944331:	cc                   	int3
944332:	cc                   	int3
944333:	cc                   	int3
944334:	cc                   	int3
944335:	33 c0                	xor    %eax,%eax
944337:	40                   	inc    %eax
944338:	c2 14 00             	ret    $0x14
94433b:	55                   	push   %ebp
94433c:	8b ec                	mov    %esp,%ebp
94433e:	51                   	push   %ecx
94433f:	53                   	push   %ebx
944340:	8b 5d 08             	mov    0x8(%ebp),%ebx
944343:	8d 4d ff             	lea    -0x1(%ebp),%ecx
944346:	56                   	push   %esi
944347:	57                   	push   %edi
944348:	ff 73 c0             	push   -0x40(%ebx)
94434b:	e8 37 a8 ad ff       	call   0x41eb87
944350:	ff 75 1c             	push   0x1c(%ebp)
944353:	8b 43 a4             	mov    -0x5c(%ebx),%eax
944356:	8d 75 0c             	lea    0xc(%ebp),%esi
944359:	83 ec 10             	sub    $0x10,%esp
94435c:	8b fc                	mov    %esp,%edi
94435e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
94435f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
944360:	a5                   	movsl  %ds:(%esi),%es:(%edi)
944361:	a5                   	movsl  %ds:(%esi),%es:(%edi)
944362:	8b b0 a0 00 00 00    	mov    0xa0(%eax),%esi
944368:	8b ce                	mov    %esi,%ecx
94436a:	e8 f6 82 ae ff       	call   0x42c665
94436f:	8d 4b a4             	lea    -0x5c(%ebx),%ecx
944372:	ff d6                	call   *%esi
944374:	8d 4d ff             	lea    -0x1(%ebp),%ecx
944377:	8b f0                	mov    %eax,%esi
944379:	e8 d6 de ae ff       	call   0x432254
94437e:	5f                   	pop    %edi
94437f:	8b c6                	mov    %esi,%eax
944381:	5e                   	pop    %esi
944382:	5b                   	pop    %ebx
944383:	8b e5                	mov    %ebp,%esp
944385:	5d                   	pop    %ebp
944386:	c2 18 00             	ret    $0x18
944389:	cc                   	int3
94438a:	cc                   	int3
94438b:	cc                   	int3
94438c:	cc                   	int3
94438d:	cc                   	int3
94438e:	cc                   	int3
94438f:	cc                   	int3
944390:	cc                   	int3
944391:	cc                   	int3
944392:	cc                   	int3
944393:	cc                   	int3
944394:	cc                   	int3
944395:	cc                   	int3
944396:	cc                   	int3
944397:	cc                   	int3
944398:	cc                   	int3
944399:	cc                   	int3
94439a:	cc                   	int3
94439b:	cc                   	int3
94439c:	55                   	push   %ebp
94439d:	8b ec                	mov    %esp,%ebp
94439f:	56                   	push   %esi
9443a0:	8b 75 14             	mov    0x14(%ebp),%esi
9443a3:	85 f6                	test   %esi,%esi
9443a5:	75 04                	jne    0x9443ab
9443a7:	33 c0                	xor    %eax,%eax
9443a9:	eb 6d                	jmp    0x944418
9443ab:	8b 45 08             	mov    0x8(%ebp),%eax
9443ae:	85 c0                	test   %eax,%eax
9443b0:	75 13                	jne    0x9443c5
9443b2:	e8 b8 a4 af ff       	call   0x43e86f
9443b7:	6a 16                	push   $0x16
9443b9:	5e                   	pop    %esi
9443ba:	89 30                	mov    %esi,(%eax)
9443bc:	e8 37 af ad ff       	call   0x41f2f8
9443c1:	8b c6                	mov    %esi,%eax
9443c3:	eb 53                	jmp    0x944418
9443c5:	57                   	push   %edi
9443c6:	8b 7d 10             	mov    0x10(%ebp),%edi
9443c9:	85 ff                	test   %edi,%edi
9443cb:	74 14                	je     0x9443e1
9443cd:	39 75 0c             	cmp    %esi,0xc(%ebp)
9443d0:	72 0f                	jb     0x9443e1
9443d2:	56                   	push   %esi
9443d3:	57                   	push   %edi
9443d4:	50                   	push   %eax
9443d5:	e8 a8 02 ad ff       	call   0x414682
9443da:	83 c4 0c             	add    $0xc,%esp
9443dd:	33 c0                	xor    %eax,%eax
9443df:	eb 36                	jmp    0x944417
9443e1:	ff 75 0c             	push   0xc(%ebp)
9443e4:	6a 00                	push   $0x0
9443e6:	50                   	push   %eax
9443e7:	e8 cc 03 ad ff       	call   0x4147b8
9443ec:	83 c4 0c             	add    $0xc,%esp
9443ef:	85 ff                	test   %edi,%edi
9443f1:	75 09                	jne    0x9443fc
9443f3:	e8 77 a4 af ff       	call   0x43e86f
9443f8:	6a 16                	push   $0x16
9443fa:	eb 0c                	jmp    0x944408
9443fc:	39 75 0c             	cmp    %esi,0xc(%ebp)
9443ff:	73 13                	jae    0x944414
944401:	e8 69 a4 af ff       	call   0x43e86f
944406:	6a 22                	push   $0x22
944408:	5e                   	pop    %esi
944409:	89 30                	mov    %esi,(%eax)
94440b:	e8 e8 ae ad ff       	call   0x41f2f8
944410:	8b c6                	mov    %esi,%eax
944412:	eb 03                	jmp    0x944417
944414:	6a 16                	push   $0x16
944416:	58                   	pop    %eax
944417:	5f                   	pop    %edi
944418:	5e                   	pop    %esi
944419:	5d                   	pop    %ebp
94441a:	c3                   	ret
94441b:	cc                   	int3
94441c:	cc                   	int3
94441d:	cc                   	int3
94441e:	cc                   	int3
94441f:	cc                   	int3
944420:	cc                   	int3
944421:	cc                   	int3
944422:	cc                   	int3
944423:	cc                   	int3
944424:	cc                   	int3
944425:	cc                   	int3
944426:	cc                   	int3
944427:	cc                   	int3
944428:	cc                   	int3
944429:	cc                   	int3
94442a:	cc                   	int3
94442b:	cc                   	int3
94442c:	cc                   	int3
94442d:	cc                   	int3
94442e:	cc                   	int3
94442f:	cc                   	int3
944430:	cc                   	int3
944431:	cc                   	int3
944432:	cc                   	int3
944433:	cc                   	int3
944434:	cc                   	int3
944435:	cc                   	int3
944436:	cc                   	int3
944437:	cc                   	int3
944438:	cc                   	int3
944439:	cc                   	int3
94443a:	55                   	push   %ebp
94443b:	8b ec                	mov    %esp,%ebp
94443d:	8b 45 14             	mov    0x14(%ebp),%eax
944440:	56                   	push   %esi
944441:	85 c0                	test   %eax,%eax
944443:	74 3c                	je     0x944481
944445:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
944449:	75 13                	jne    0x94445e
94444b:	e8 1f a4 af ff       	call   0x43e86f
944450:	6a 16                	push   $0x16
944452:	5e                   	pop    %esi
944453:	89 30                	mov    %esi,(%eax)
944455:	e8 9e ae ad ff       	call   0x41f2f8
94445a:	8b c6                	mov    %esi,%eax
94445c:	eb 25                	jmp    0x944483
94445e:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
944462:	74 e7                	je     0x94444b
944464:	39 45 0c             	cmp    %eax,0xc(%ebp)
944467:	73 09                	jae    0x944472
944469:	e8 01 a4 af ff       	call   0x43e86f
94446e:	6a 22                	push   $0x22
944470:	eb e0                	jmp    0x944452
944472:	50                   	push   %eax
944473:	ff 75 10             	push   0x10(%ebp)
944476:	ff 75 08             	push   0x8(%ebp)
944479:	e8 04 a7 ad ff       	call   0x41eb82
94447e:	83 c4 0c             	add    $0xc,%esp
944481:	33 c0                	xor    %eax,%eax
944483:	5e                   	pop    %esi
944484:	5d                   	pop    %ebp
944485:	c3                   	ret
944486:	cc                   	int3
944487:	cc                   	int3
944488:	cc                   	int3
944489:	cc                   	int3
94448a:	cc                   	int3
94448b:	cc                   	int3
94448c:	cc                   	int3
94448d:	cc                   	int3
94448e:	cc                   	int3
94448f:	cc                   	int3
944490:	cc                   	int3
944491:	cc                   	int3
944492:	cc                   	int3
944493:	cc                   	int3
944494:	cc                   	int3
944495:	cc                   	int3
944496:	cc                   	int3
944497:	cc                   	int3
944498:	cc                   	int3
944499:	55                   	push   %ebp
94449a:	8b ec                	mov    %esp,%ebp
94449c:	51                   	push   %ecx
94449d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
9444a0:	53                   	push   %ebx
9444a1:	56                   	push   %esi
9444a2:	57                   	push   %edi
9444a3:	8b 7d 10             	mov    0x10(%ebp),%edi
9444a6:	85 ff                	test   %edi,%edi
9444a8:	74 08                	je     0x9444b2
9444aa:	85 c9                	test   %ecx,%ecx
9444ac:	0f 84 85 00 00 00    	je     0x944537
9444b2:	8b 55 08             	mov    0x8(%ebp),%edx
9444b5:	8b 42 18             	mov    0x18(%edx),%eax
9444b8:	f7 d0                	not    %eax
9444ba:	a8 01                	test   $0x1,%al
9444bc:	74 39                	je     0x9444f7
9444be:	85 ff                	test   %edi,%edi
9444c0:	74 6c                	je     0x94452e
9444c2:	bb ff ff ff 1f       	mov    $0x1fffffff,%ebx
9444c7:	3b fb                	cmp    %ebx,%edi
9444c9:	73 07                	jae    0x9444d2
9444cb:	8b c7                	mov    %edi,%eax
9444cd:	89 45 fc             	mov    %eax,-0x4(%ebp)
9444d0:	eb 05                	jmp    0x9444d7
9444d2:	8b c3                	mov    %ebx,%eax
9444d4:	89 5d fc             	mov    %ebx,-0x4(%ebp)
9444d7:	8b f0                	mov    %eax,%esi
9444d9:	c1 e6 02             	shl    $0x2,%esi
9444dc:	56                   	push   %esi
9444dd:	51                   	push   %ecx
9444de:	8b ca                	mov    %edx,%ecx
9444e0:	e8 c1 35 af ff       	call   0x437aa6
9444e5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
9444e8:	8b 55 08             	mov    0x8(%ebp),%edx
9444eb:	03 ce                	add    %esi,%ecx
9444ed:	89 4d 0c             	mov    %ecx,0xc(%ebp)
9444f0:	2b 7d fc             	sub    -0x4(%ebp),%edi
9444f3:	75 d2                	jne    0x9444c7
9444f5:	eb 37                	jmp    0x94452e
9444f7:	85 ff                	test   %edi,%edi
9444f9:	74 33                	je     0x94452e
9444fb:	bb ff ff ff 1f       	mov    $0x1fffffff,%ebx
944500:	3b fb                	cmp    %ebx,%edi
944502:	73 07                	jae    0x94450b
944504:	8b c7                	mov    %edi,%eax
944506:	89 45 fc             	mov    %eax,-0x4(%ebp)
944509:	eb 05                	jmp    0x944510
94450b:	8b c3                	mov    %ebx,%eax
94450d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
944510:	8b f0                	mov    %eax,%esi
944512:	c1 e6 02             	shl    $0x2,%esi
944515:	56                   	push   %esi
944516:	51                   	push   %ecx
944517:	8b ca                	mov    %edx,%ecx
944519:	e8 69 a5 ae ff       	call   0x42ea87
94451e:	8b 4d 0c             	mov    0xc(%ebp),%ecx