41830b:	cc                   	int3
41830c:	cc                   	int3
41830d:	cc                   	int3
41830e:	cc                   	int3
41830f:	cc                   	int3
418310:	8b ff                	mov    %edi,%edi
418312:	55                   	push   %ebp
418313:	8b ec                	mov    %esp,%ebp
418315:	83 ec 6c             	sub    $0x6c,%esp
418318:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
41831b:	ff 75 08             	push   0x8(%ebp)
41831e:	e8 d2 fd ff ff       	call   0x4180f5
418323:	68 18 ea 49 00       	push   $0x49ea18
418328:	8d 45 94             	lea    -0x6c(%ebp),%eax
41832b:	50                   	push   %eax
41832c:	e8 6a 81 07 00       	call   0x49049b
418331:	cc                   	int3
418332:	cc                   	int3
418333:	cc                   	int3
418334:	cc                   	int3
418335:	cc                   	int3
418336:	cc                   	int3
418337:	cc                   	int3
418338:	cc                   	int3
418339:	cc                   	int3
41833a:	cc                   	int3
41833b:	cc                   	int3
41833c:	cc                   	int3
41833d:	cc                   	int3
41833e:	cc                   	int3
41833f:	cc                   	int3
418340:	8b ff                	mov    %edi,%edi
418342:	55                   	push   %ebp
418343:	8b ec                	mov    %esp,%ebp
418345:	51                   	push   %ecx
418346:	53                   	push   %ebx
418347:	8b 5d 08             	mov    0x8(%ebp),%ebx
41834a:	56                   	push   %esi
41834b:	57                   	push   %edi
41834c:	8b f1                	mov    %ecx,%esi
41834e:	53                   	push   %ebx
41834f:	89 75 fc             	mov    %esi,-0x4(%ebp)
418352:	ff 15 d4 80 4a 00    	call   *0x4a80d4
418358:	8d 56 0c             	lea    0xc(%esi),%edx
41835b:	c7 06 c0 10 40 00    	movl   $0x4010c0,(%esi)
418361:	6a 14                	push   $0x14
418363:	8d 43 0c             	lea    0xc(%ebx),%eax
418366:	8b fa                	mov    %edx,%edi
418368:	59                   	pop    %ecx
418369:	8b f0                	mov    %eax,%esi
41836b:	83 c0 50             	add    $0x50,%eax
41836e:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
418370:	50                   	push   %eax
418371:	8d 4a 50             	lea    0x50(%edx),%ecx
418374:	e8 5b f8 ff ff       	call   0x417bd4
418379:	8b 75 fc             	mov    -0x4(%ebp),%esi
41837c:	8d 43 64             	lea    0x64(%ebx),%eax
41837f:	50                   	push   %eax
418380:	8d 4e 64             	lea    0x64(%esi),%ecx
418383:	e8 4c f8 ff ff       	call   0x417bd4
418388:	5f                   	pop    %edi
418389:	8b c6                	mov    %esi,%eax
41838b:	5e                   	pop    %esi
41838c:	5b                   	pop    %ebx
41838d:	c9                   	leave
41838e:	c2 04 00             	ret    $0x4
418391:	cc                   	int3
418392:	cc                   	int3
418393:	cc                   	int3
418394:	cc                   	int3
418395:	cc                   	int3
418396:	cc                   	int3
418397:	cc                   	int3
418398:	cc                   	int3
418399:	cc                   	int3
41839a:	cc                   	int3
41839b:	cc                   	int3
41839c:	cc                   	int3
41839d:	cc                   	int3
41839e:	cc                   	int3
41839f:	cc                   	int3
4183a0:	6a 20                	push   $0x20
4183a2:	b8 6a 10 49 00       	mov    $0x49106a,%eax
4183a7:	e8 90 81 07 00       	call   0x49053c
4183ac:	8b 75 08             	mov    0x8(%ebp),%esi
4183af:	8b 7d 10             	mov    0x10(%ebp),%edi
4183b2:	89 75 e8             	mov    %esi,-0x18(%ebp)
4183b5:	89 7d ec             	mov    %edi,-0x14(%ebp)
4183b8:	85 f6                	test   %esi,%esi
4183ba:	74 05                	je     0x4183c1
4183bc:	33 c0                	xor    %eax,%eax
4183be:	66 89 06             	mov    %ax,(%esi)
4183c1:	8b 1d 64 46 4a 00    	mov    0x4a4664,%ebx
4183c7:	33 c0                	xor    %eax,%eax
4183c9:	88 07                	mov    %al,(%edi)
4183cb:	85 db                	test   %ebx,%ebx
4183cd:	74 19                	je     0x4183e8
4183cf:	57                   	push   %edi
4183d0:	ff 75 0c             	push   0xc(%ebp)
4183d3:	8b cb                	mov    %ebx,%ecx
4183d5:	56                   	push   %esi
4183d6:	ff 15 2c 81 4a 00    	call   *0x4a812c
4183dc:	ff d3                	call   *%ebx
4183de:	85 c0                	test   %eax,%eax
4183e0:	0f 88 14 01 00 00    	js     0x4184fa
4183e6:	33 c0                	xor    %eax,%eax
4183e8:	8b 1d 8c 46 4a 00    	mov    0x4a468c,%ebx
4183ee:	85 db                	test   %ebx,%ebx
4183f0:	74 14                	je     0x418406
4183f2:	57                   	push   %edi
4183f3:	ff 75 0c             	push   0xc(%ebp)
4183f6:	8b cb                	mov    %ebx,%ecx
4183f8:	56                   	push   %esi
4183f9:	ff 15 2c 81 4a 00    	call   *0x4a812c
4183ff:	ff d3                	call   *%ebx
418401:	e9 f4 00 00 00       	jmp    0x4184fa
418406:	83 3d 54 46 4a 00 00 	cmpl   $0x0,0x4a4654
41840d:	50                   	push   %eax
41840e:	50                   	push   %eax
41840f:	0f 85 ed 00 00 00    	jne    0x418502
418415:	eb 6b                	jmp    0x418482
418417:	8b 45 ec             	mov    -0x14(%ebp),%eax
41841a:	8b 4d e8             	mov    -0x18(%ebp),%ecx
41841d:	c6 00 01             	movb   $0x1,(%eax)
418420:	85 c9                	test   %ecx,%ecx
418422:	74 15                	je     0x418439
418424:	8b 55 0c             	mov    0xc(%ebp),%edx
418427:	85 d2                	test   %edx,%edx
418429:	74 0e                	je     0x418439
41842b:	8b 75 e4             	mov    -0x1c(%ebp),%esi
41842e:	8d 46 0c             	lea    0xc(%esi),%eax
418431:	50                   	push   %eax
418432:	e8 62 f5 ff ff       	call   0x417999
418437:	eb 03                	jmp    0x41843c
418439:	8b 75 e4             	mov    -0x1c(%ebp),%esi
41843c:	8b 46 10             	mov    0x10(%esi),%eax
41843f:	89 45 ec             	mov    %eax,-0x14(%ebp)
418442:	b8 48 84 41 00       	mov    $0x418448,%eax
418447:	c3                   	ret
418448:	8b 45 ec             	mov    -0x14(%ebp),%eax
41844b:	e9 aa 00 00 00       	jmp    0x4184fa
418450:	ff 75 0c             	push   0xc(%ebp)
418453:	8b 55 e8             	mov    -0x18(%ebp),%edx
418456:	8b 4d dc             	mov    -0x24(%ebp),%ecx
418459:	e8 f3 fd ff ff       	call   0x418251
41845e:	b8 d0 84 41 00       	mov    $0x4184d0,%eax
418463:	c3                   	ret
418464:	8b 55 0c             	mov    0xc(%ebp),%edx
418467:	8b 4d e8             	mov    -0x18(%ebp),%ecx
41846a:	e8 1c fe ff ff       	call   0x41828b
41846f:	89 45 ec             	mov    %eax,-0x14(%ebp)
418472:	85 c0                	test   %eax,%eax
418474:	79 06                	jns    0x41847c
418476:	b8 48 84 41 00       	mov    $0x418448,%eax
41847b:	c3                   	ret
41847c:	b8 f8 84 41 00       	mov    $0x4184f8,%eax
418481:	c3                   	ret
418482:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
418489:	eb 7a                	jmp    0x418505
41848b:	8b 45 ec             	mov    -0x14(%ebp),%eax
41848e:	8b 4d e8             	mov    -0x18(%ebp),%ecx
418491:	c6 00 01             	movb   $0x1,(%eax)
418494:	85 c9                	test   %ecx,%ecx
418496:	74 15                	je     0x4184ad
418498:	8b 55 0c             	mov    0xc(%ebp),%edx
41849b:	85 d2                	test   %edx,%edx
41849d:	74 0e                	je     0x4184ad
41849f:	8b 75 e0             	mov    -0x20(%ebp),%esi
4184a2:	8d 46 0c             	lea    0xc(%esi),%eax
4184a5:	50                   	push   %eax
4184a6:	e8 ee f4 ff ff       	call   0x417999
4184ab:	eb 03                	jmp    0x4184b0
4184ad:	8b 75 e0             	mov    -0x20(%ebp),%esi
4184b0:	8b 46 10             	mov    0x10(%esi),%eax
4184b3:	89 45 ec             	mov    %eax,-0x14(%ebp)
4184b6:	b8 48 84 41 00       	mov    $0x418448,%eax
4184bb:	c3                   	ret
4184bc:	ff 75 0c             	push   0xc(%ebp)
4184bf:	8b 55 e8             	mov    -0x18(%ebp),%edx
4184c2:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4184c5:	e8 87 fd ff ff       	call   0x418251
4184ca:	b8 d0 84 41 00       	mov    $0x4184d0,%eax
4184cf:	c3                   	ret
4184d0:	b8 0e 00 07 80       	mov    $0x8007000e,%eax
4184d5:	eb 23                	jmp    0x4184fa
4184d7:	ff 75 0c             	push   0xc(%ebp)
4184da:	8b 55 e8             	mov    -0x18(%ebp),%edx
4184dd:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4184e0:	e8 6c fd ff ff       	call   0x418251
4184e5:	b8 eb 84 41 00       	mov    $0x4184eb,%eax
4184ea:	c3                   	ret
4184eb:	b8 3e 02 07 80       	mov    $0x8007023e,%eax
4184f0:	eb 08                	jmp    0x4184fa
4184f2:	b8 f8 84 41 00       	mov    $0x4184f8,%eax
4184f7:	c3                   	ret
4184f8:	33 c0                	xor    %eax,%eax
4184fa:	e8 a2 7f 07 00       	call   0x4904a1
4184ff:	c2 0c 00             	ret    $0xc
418502:	89 45 fc             	mov    %eax,-0x4(%ebp)
418505:	e8 91 7f 07 00       	call   0x49049b
41850a:	cc                   	int3
41850b:	8b ff                	mov    %edi,%edi
41850d:	55                   	push   %ebp
41850e:	8b ec                	mov    %esp,%ebp
418510:	83 ec 20             	sub    $0x20,%esp
418513:	8b 45 08             	mov    0x8(%ebp),%eax
418516:	89 45 f8             	mov    %eax,-0x8(%ebp)
418519:	8b 45 0c             	mov    0xc(%ebp),%eax
41851c:	89 45 f0             	mov    %eax,-0x10(%ebp)
41851f:	8b 45 10             	mov    0x10(%ebp),%eax
418522:	89 45 f4             	mov    %eax,-0xc(%ebp)
418525:	8b 45 14             	mov    0x14(%ebp),%eax
418528:	53                   	push   %ebx
418529:	8b 5d 28             	mov    0x28(%ebp),%ebx
41852c:	89 45 ec             	mov    %eax,-0x14(%ebp)
41852f:	8b 45 30             	mov    0x30(%ebp),%eax
418532:	56                   	push   %esi
418533:	8b 75 38             	mov    0x38(%ebp),%esi
418536:	57                   	push   %edi
418537:	33 ff                	xor    %edi,%edi
418539:	89 45 e0             	mov    %eax,-0x20(%ebp)
41853c:	66 89 3b             	mov    %di,(%ebx)
41853f:	c6 00 00             	movb   $0x0,(%eax)
418542:	33 c0                	xor    %eax,%eax
418544:	89 45 fc             	mov    %eax,-0x4(%ebp)
418547:	8b 45 18             	mov    0x18(%ebp),%eax
41854a:	2b c7                	sub    %edi,%eax
41854c:	89 55 e8             	mov    %edx,-0x18(%ebp)
41854f:	8b 7d 1c             	mov    0x1c(%ebp),%edi
418552:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
418555:	74 46                	je     0x41859d
418557:	83 e8 01             	sub    $0x1,%eax
41855a:	74 38                	je     0x418594
41855c:	83 e8 01             	sub    $0x1,%eax
41855f:	74 0d                	je     0x41856e
418561:	83 e8 01             	sub    $0x1,%eax
418564:	75 41                	jne    0x4185a7
418566:	57                   	push   %edi
418567:	e8 74 f7 ff ff       	call   0x417ce0
41856c:	eb 36                	jmp    0x4185a4
41856e:	85 ff                	test   %edi,%edi
418570:	78 19                	js     0x41858b
418572:	bf 9c 02 07 80       	mov    $0x8007029c,%edi
418577:	57                   	push   %edi
418578:	6a 02                	push   $0x2
41857a:	ff 75 ec             	push   -0x14(%ebp)
41857d:	ff 75 f4             	push   -0xc(%ebp)
418580:	ff 75 f0             	push   -0x10(%ebp)
418583:	ff 75 f8             	push   -0x8(%ebp)
418586:	e8 16 03 00 00       	call   0x4188a1
41858b:	8b cf                	mov    %edi,%ecx
41858d:	e8 33 f7 ff ff       	call   0x417cc5
418592:	eb 10                	jmp    0x4185a4
418594:	8b cf                	mov    %edi,%ecx
418596:	e8 17 f7 ff ff       	call   0x417cb2
41859b:	eb 07                	jmp    0x4185a4
41859d:	8b cf                	mov    %edi,%ecx
41859f:	e8 fb f6 ff ff       	call   0x417c9f
4185a4:	89 45 fc             	mov    %eax,-0x4(%ebp)
4185a7:	8b 45 18             	mov    0x18(%ebp),%eax
4185aa:	89 06                	mov    %eax,(%esi)
4185ac:	33 c0                	xor    %eax,%eax
4185ae:	89 7e 04             	mov    %edi,0x4(%esi)
4185b1:	40                   	inc    %eax
4185b2:	f0 0f c1 05 1c 47 4a 	lock xadd %eax,0x4a471c
4185b9:	00
4185ba:	40                   	inc    %eax
4185bb:	89 46 08             	mov    %eax,0x8(%esi)
4185be:	8b 45 20             	mov    0x20(%ebp),%eax
4185c1:	85 c0                	test   %eax,%eax
4185c3:	74 07                	je     0x4185cc
4185c5:	33 c9                	xor    %ecx,%ecx
4185c7:	66 39 08             	cmp    %cx,(%eax)
4185ca:	75 02                	jne    0x4185ce
4185cc:	33 c0                	xor    %eax,%eax
4185ce:	89 46 0c             	mov    %eax,0xc(%esi)
4185d1:	ff 15 ac 72 4a 00    	call   *0x4a72ac
4185d7:	89 46 10             	mov    %eax,0x10(%esi)
4185da:	8d 7e 2c             	lea    0x2c(%esi),%edi
4185dd:	8b 45 f8             	mov    -0x8(%ebp),%eax
4185e0:	33 d2                	xor    %edx,%edx
4185e2:	89 46 1c             	mov    %eax,0x1c(%esi)
4185e5:	8b 45 e8             	mov    -0x18(%ebp),%eax
4185e8:	89 46 20             	mov    %eax,0x20(%esi)
4185eb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4185ee:	89 46 24             	mov    %eax,0x24(%esi)
4185f1:	8b 45 f4             	mov    -0xc(%ebp),%eax
4185f4:	89 46 14             	mov    %eax,0x14(%esi)
4185f7:	8b 45 f0             	mov    -0x10(%ebp),%eax
4185fa:	89 46 18             	mov    %eax,0x18(%esi)
4185fd:	8b 45 ec             	mov    -0x14(%ebp),%eax
418600:	89 46 48             	mov    %eax,0x48(%esi)
418603:	8b 45 e4             	mov    -0x1c(%ebp),%eax
418606:	89 46 4c             	mov    %eax,0x4c(%esi)
418609:	33 c0                	xor    %eax,%eax
41860b:	6a 06                	push   $0x6
41860d:	59                   	pop    %ecx
41860e:	89 56 28             	mov    %edx,0x28(%esi)
418611:	f3 ab                	rep stos %eax,%es:(%edi)
418613:	8b 3d 9c 46 4a 00    	mov    0x4a469c,%edi
418619:	85 ff                	test   %edi,%edi
41861b:	74 0a                	je     0x418627
41861d:	8b cf                	mov    %edi,%ecx
41861f:	ff 15 2c 81 4a 00    	call   *0x4a812c
418625:	ff d7                	call   *%edi
418627:	8b 3d 70 46 4a 00    	mov    0x4a4670,%edi
41862d:	89 46 44             	mov    %eax,0x44(%esi)
418630:	85 ff                	test   %edi,%edi
418632:	74 13                	je     0x418647
418634:	68 00 04 00 00       	push   $0x400
418639:	ff 75 e0             	push   -0x20(%ebp)
41863c:	8b cf                	mov    %edi,%ecx
41863e:	56                   	push   %esi
41863f:	ff 15 2c 81 4a 00    	call   *0x4a812c
418645:	ff d7                	call   *%edi
418647:	8b 3d 68 46 4a 00    	mov    0x4a4668,%edi
41864d:	85 ff                	test   %edi,%edi
41864f:	74 0b                	je     0x41865c
418651:	56                   	push   %esi
418652:	8b cf                	mov    %edi,%ecx
418654:	ff 15 2c 81 4a 00    	call   *0x4a812c
41865a:	ff d7                	call   *%edi
41865c:	8b 3d 84 46 4a 00    	mov    0x4a4684,%edi
418662:	85 ff                	test   %edi,%edi
418664:	74 0b                	je     0x418671
418666:	56                   	push   %esi
418667:	8b cf                	mov    %edi,%ecx
418669:	ff 15 2c 81 4a 00    	call   *0x4a812c
41866f:	ff d7                	call   *%edi
418671:	33 c0                	xor    %eax,%eax
418673:	39 46 04             	cmp    %eax,0x4(%esi)
418676:	7c 11                	jl     0x418689
418678:	83 7d 18 03          	cmpl   $0x3,0x18(%ebp)
41867c:	0f 85 bc 00 00 00    	jne    0x41873e
418682:	c7 46 04 ff ff 00 80 	movl   $0x8000ffff,0x4(%esi)
418689:	38 05 48 46 4a 00    	cmp    %al,0x4a4648
41868f:	75 4a                	jne    0x4186db
418691:	8b 3d 40 46 4a 00    	mov    0x4a4640,%edi
418697:	85 ff                	test   %edi,%edi
418699:	74 0f                	je     0x4186aa
41869b:	8b cf                	mov    %edi,%ecx
41869d:	ff 15 2c 81 4a 00    	call   *0x4a812c
4186a3:	ff d7                	call   *%edi
4186a5:	0f b6 c0             	movzbl %al,%eax
4186a8:	eb 0c                	jmp    0x4186b6
4186aa:	ff 15 68 72 4a 00    	call   *0x4a7268
4186b0:	f7 d8                	neg    %eax
4186b2:	1b c0                	sbb    %eax,%eax
4186b4:	f7 d8                	neg    %eax
4186b6:	85 c0                	test   %eax,%eax