4631cc:	53                   	push   %ebx
4631cd:	52                   	push   %edx
4631ce:	50                   	push   %eax
4631cf:	32 d2                	xor    %dl,%dl
4631d1:	e8 3a 29 00 00       	call   0x465b10
4631d6:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4631d9:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4631dc:	2b df                	sub    %edi,%ebx
4631de:	83 c4 10             	add    $0x10,%esp
4631e1:	c1 fb 02             	sar    $0x2,%ebx
4631e4:	c1 e3 05             	shl    $0x5,%ebx
4631e7:	03 5d ec             	add    -0x14(%ebp),%ebx
4631ea:	89 5e 40             	mov    %ebx,0x40(%esi)
4631ed:	8b 7e 50             	mov    0x50(%esi),%edi
4631f0:	e8 9b af fe ff       	call   0x44e190
4631f5:	51                   	push   %ecx
4631f6:	6a 02                	push   $0x2
4631f8:	c7 45 d4 dc 6b 4b 00 	movl   $0x4b6bdc,-0x2c(%ebp)
4631ff:	c7 45 dc 02 00 00 00 	movl   $0x2,-0x24(%ebp)
463206:	e8 75 05 ff ff       	call   0x453780
46320b:	3b df                	cmp    %edi,%ebx
46320d:	0f 85 04 01 00 00    	jne    0x463317
463213:	8b d8                	mov    %eax,%ebx
463215:	89 5d e0             	mov    %ebx,-0x20(%ebp)
463218:	85 ff                	test   %edi,%edi
46321a:	78 09                	js     0x463225
46321c:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
463223:	eb 09                	jmp    0x46322e
463225:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
46322c:	f7 df                	neg    %edi
46322e:	89 3b                	mov    %edi,(%ebx)
463230:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
463237:	8d 46 28             	lea    0x28(%esi),%eax
46323a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
463241:	50                   	push   %eax
463242:	8d 45 c0             	lea    -0x40(%ebp),%eax
463245:	50                   	push   %eax
463246:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
463249:	e8 62 da fe ff       	call   0x450cb0
46324e:	8d 45 c0             	lea    -0x40(%ebp),%eax
463251:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
463255:	50                   	push   %eax
463256:	8b ce                	mov    %esi,%ecx
463258:	e8 c3 d5 fe ff       	call   0x450820
46325d:	8b 45 cc             	mov    -0x34(%ebp),%eax
463260:	8b f8                	mov    %eax,%edi
463262:	8b 55 c8             	mov    -0x38(%ebp),%edx
463265:	8b ca                	mov    %edx,%ecx
463267:	89 45 ec             	mov    %eax,-0x14(%ebp)
46326a:	33 c0                	xor    %eax,%eax
46326c:	ff 75 ec             	push   -0x14(%ebp)
46326f:	f3 ab                	rep stos %eax,%es:(%edi)
463271:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
463278:	83 f8 10             	cmp    $0x10,%eax
46327b:	72 07                	jb     0x463284
46327d:	e8 de 2c 03 00       	call   0x495f60
463282:	eb 05                	jmp    0x463289
463284:	e8 f9 63 01 00       	call   0x479682
463289:	83 c4 04             	add    $0x4,%esp
46328c:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
463293:	33 c0                	xor    %eax,%eax
463295:	8b fb                	mov    %ebx,%edi
463297:	b9 02 00 00 00       	mov    $0x2,%ecx
46329c:	f3 ab                	rep stos %eax,%es:(%edi)
46329e:	53                   	push   %ebx
46329f:	e8 de 63 01 00       	call   0x479682
4632a4:	8b 4e 24             	mov    0x24(%esi),%ecx
4632a7:	8d 46 14             	lea    0x14(%esi),%eax
4632aa:	83 c4 04             	add    $0x4,%esp
4632ad:	83 7e 10 01          	cmpl   $0x1,0x10(%esi)
4632b1:	74 0f                	je     0x4632c2
4632b3:	83 f9 01             	cmp    $0x1,%ecx
4632b6:	74 1d                	je     0x4632d5
4632b8:	50                   	push   %eax
4632b9:	8b ce                	mov    %esi,%ecx
4632bb:	e8 60 e1 fe ff       	call   0x451420
4632c0:	eb 0f                	jmp    0x4632d1
4632c2:	83 f9 01             	cmp    $0x1,%ecx
4632c5:	75 24                	jne    0x4632eb
4632c7:	50                   	push   %eax
4632c8:	8b ce                	mov    %esi,%ecx
4632ca:	e8 51 e1 fe ff       	call   0x451420
4632cf:	f7 d8                	neg    %eax
4632d1:	85 c0                	test   %eax,%eax
4632d3:	7e 16                	jle    0x4632eb
4632d5:	32 c0                	xor    %al,%al
4632d7:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4632da:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4632e1:	59                   	pop    %ecx
4632e2:	5f                   	pop    %edi
4632e3:	5e                   	pop    %esi
4632e4:	5b                   	pop    %ebx
4632e5:	8b e5                	mov    %ebp,%esp
4632e7:	5d                   	pop    %ebp
4632e8:	c2 04 00             	ret    $0x4
4632eb:	8b ce                	mov    %esi,%ecx
4632ed:	c7 46 40 00 00 00 00 	movl   $0x0,0x40(%esi)
4632f4:	e8 97 03 00 00       	call   0x463690
4632f9:	ff 75 08             	push   0x8(%ebp)
4632fc:	8b ce                	mov    %esi,%ecx
4632fe:	e8 1d fe ff ff       	call   0x463120
463303:	8b 4d f4             	mov    -0xc(%ebp),%ecx
463306:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
46330d:	59                   	pop    %ecx
46330e:	5f                   	pop    %edi
46330f:	5e                   	pop    %esi
463310:	5b                   	pop    %ebx
463311:	8b e5                	mov    %ebp,%esp
463313:	5d                   	pop    %ebp
463314:	c2 04 00             	ret    $0x4
463317:	33 c9                	xor    %ecx,%ecx
463319:	89 45 e0             	mov    %eax,-0x20(%ebp)
46331c:	85 db                	test   %ebx,%ebx
46331e:	0f 98 c1             	sets   %cl
463321:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
463324:	8b cb                	mov    %ebx,%ecx
463326:	f7 d9                	neg    %ecx
463328:	85 db                	test   %ebx,%ebx
46332a:	0f 48 d9             	cmovs  %ecx,%ebx
46332d:	89 18                	mov    %ebx,(%eax)
46332f:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
463336:	8d 46 28             	lea    0x28(%esi),%eax
463339:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
463340:	50                   	push   %eax
463341:	8d 45 98             	lea    -0x68(%ebp),%eax
463344:	50                   	push   %eax
463345:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
463348:	e8 63 d9 fe ff       	call   0x450cb0
46334d:	8d 45 98             	lea    -0x68(%ebp),%eax
463350:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
463354:	50                   	push   %eax
463355:	8d 45 ac             	lea    -0x54(%ebp),%eax
463358:	8b ce                	mov    %esi,%ecx
46335a:	50                   	push   %eax
46335b:	e8 c0 d3 fe ff       	call   0x450720
463360:	8b 4d 08             	mov    0x8(%ebp),%ecx
463363:	8d 45 ac             	lea    -0x54(%ebp),%eax
463366:	50                   	push   %eax
463367:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
46336b:	e8 c0 b2 fe ff       	call   0x44e630
463370:	8b 55 b4             	mov    -0x4c(%ebp),%edx
463373:	33 c0                	xor    %eax,%eax
463375:	8b 5d b8             	mov    -0x48(%ebp),%ebx
463378:	8b ca                	mov    %edx,%ecx
46337a:	8b fb                	mov    %ebx,%edi
46337c:	f3 ab                	rep stos %eax,%es:(%edi)
46337e:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
463385:	53                   	push   %ebx
463386:	83 f8 10             	cmp    $0x10,%eax
463389:	72 07                	jb     0x463392
46338b:	e8 d0 2b 03 00       	call   0x495f60
463390:	eb 05                	jmp    0x463397
463392:	e8 eb 62 01 00       	call   0x479682
463397:	8b 55 a0             	mov    -0x60(%ebp),%edx
46339a:	33 c0                	xor    %eax,%eax
46339c:	8b 5d a4             	mov    -0x5c(%ebp),%ebx
46339f:	83 c4 04             	add    $0x4,%esp
4633a2:	8b fb                	mov    %ebx,%edi
4633a4:	8b ca                	mov    %edx,%ecx
4633a6:	f3 ab                	rep stos %eax,%es:(%edi)
4633a8:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
4633af:	53                   	push   %ebx
4633b0:	83 f8 10             	cmp    $0x10,%eax
4633b3:	72 07                	jb     0x4633bc
4633b5:	e8 a6 2b 03 00       	call   0x495f60
4633ba:	eb 05                	jmp    0x4633c1
4633bc:	e8 c1 62 01 00       	call   0x479682
4633c1:	8b 55 e0             	mov    -0x20(%ebp),%edx
4633c4:	83 c4 04             	add    $0x4,%esp
4633c7:	8b fa                	mov    %edx,%edi
4633c9:	33 c0                	xor    %eax,%eax
4633cb:	b9 02 00 00 00       	mov    $0x2,%ecx
4633d0:	f3 ab                	rep stos %eax,%es:(%edi)
4633d2:	52                   	push   %edx
4633d3:	e8 aa 62 01 00       	call   0x479682
4633d8:	83 c4 04             	add    $0x4,%esp
4633db:	b0 01                	mov    $0x1,%al
4633dd:	ff 46 40             	incl   0x40(%esi)
4633e0:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4633e3:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4633ea:	59                   	pop    %ecx
4633eb:	5f                   	pop    %edi
4633ec:	5e                   	pop    %esi
4633ed:	5b                   	pop    %ebx
4633ee:	8b e5                	mov    %ebp,%esp
4633f0:	5d                   	pop    %ebp
4633f1:	c2 04 00             	ret    $0x4
4633f4:	cc                   	int3
4633f5:	cc                   	int3
4633f6:	cc                   	int3
4633f7:	cc                   	int3
4633f8:	cc                   	int3
4633f9:	cc                   	int3
4633fa:	cc                   	int3
4633fb:	cc                   	int3
4633fc:	cc                   	int3
4633fd:	cc                   	int3
4633fe:	cc                   	int3
4633ff:	cc                   	int3
463400:	55                   	push   %ebp
463401:	8b ec                	mov    %esp,%ebp
463403:	6a ff                	push   $0xffffffff
463405:	68 00 cb 49 00       	push   $0x49cb00
46340a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
463410:	50                   	push   %eax
463411:	83 ec 68             	sub    $0x68,%esp
463414:	53                   	push   %ebx
463415:	56                   	push   %esi
463416:	57                   	push   %edi
463417:	a1 14 40 4c 00       	mov    0x4c4014,%eax
46341c:	33 c5                	xor    %ebp,%eax
46341e:	50                   	push   %eax
46341f:	8d 45 f4             	lea    -0xc(%ebp),%eax
463422:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
463428:	66 8b c2             	mov    %dx,%ax
46342b:	66 89 45 f0          	mov    %ax,-0x10(%ebp)
46342f:	89 4d e0             	mov    %ecx,-0x20(%ebp)
463432:	66 8b 75 10          	mov    0x10(%ebp),%si
463436:	33 db                	xor    %ebx,%ebx
463438:	89 5d ec             	mov    %ebx,-0x14(%ebp)
46343b:	66 85 f6             	test   %si,%si
46343e:	0f 84 39 02 00 00    	je     0x46367d
463444:	8b 49 0c             	mov    0xc(%ecx),%ecx
463447:	0f b7 f8             	movzwl %ax,%edi
46344a:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
46344d:	8b 4d 08             	mov    0x8(%ebp),%ecx
463450:	57                   	push   %edi
463451:	e8 da de fe ff       	call   0x451330
463456:	8b d7                	mov    %edi,%edx
463458:	2b d0                	sub    %eax,%edx
46345a:	0f b7 c6             	movzwl %si,%eax
46345d:	0f af c2             	imul   %edx,%eax
463460:	33 d2                	xor    %edx,%edx
463462:	f7 f7                	div    %edi
463464:	8b 45 08             	mov    0x8(%ebp),%eax
463467:	89 55 e8             	mov    %edx,-0x18(%ebp)
46346a:	8b 48 08             	mov    0x8(%eax),%ecx
46346d:	85 c9                	test   %ecx,%ecx
46346f:	74 1b                	je     0x46348c
463471:	8b 40 0c             	mov    0xc(%eax),%eax
463474:	8d 04 88             	lea    (%eax,%ecx,4),%eax
463477:	83 c0 fc             	add    $0xfffffffc,%eax
46347a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
463480:	39 18                	cmp    %ebx,(%eax)
463482:	75 08                	jne    0x46348c
463484:	83 e8 04             	sub    $0x4,%eax
463487:	83 e9 01             	sub    $0x1,%ecx
46348a:	75 f4                	jne    0x463480
46348c:	83 f9 01             	cmp    $0x1,%ecx
46348f:	0f 87 db 00 00 00    	ja     0x463570
463495:	8d 4d bc             	lea    -0x44(%ebp),%ecx
463498:	e8 f3 ac fe ff       	call   0x44e190
46349d:	51                   	push   %ecx
46349e:	6a 02                	push   $0x2
4634a0:	c7 45 b8 dc 6b 4b 00 	movl   $0x4b6bdc,-0x48(%ebp)
4634a7:	c7 45 c0 02 00 00 00 	movl   $0x2,-0x40(%ebp)
4634ae:	e8 cd 02 ff ff       	call   0x453780
4634b3:	8b f0                	mov    %eax,%esi
4634b5:	89 5d c8             	mov    %ebx,-0x38(%ebp)
4634b8:	89 75 c4             	mov    %esi,-0x3c(%ebp)
4634bb:	89 3e                	mov    %edi,(%esi)
4634bd:	89 5e 04             	mov    %ebx,0x4(%esi)
4634c0:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4634c3:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4634c6:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4634cd:	8b fb                	mov    %ebx,%edi
4634cf:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
4634d6:	e8 b5 ac fe ff       	call   0x44e190
4634db:	51                   	push   %ecx
4634dc:	6a 02                	push   $0x2
4634de:	c7 45 cc dc 6b 4b 00 	movl   $0x4b6bdc,-0x34(%ebp)
4634e5:	c7 45 d4 02 00 00 00 	movl   $0x2,-0x2c(%ebp)
4634ec:	e8 8f 02 ff ff       	call   0x453780
4634f1:	89 45 d8             	mov    %eax,-0x28(%ebp)
4634f4:	85 db                	test   %ebx,%ebx
4634f6:	78 09                	js     0x463501
4634f8:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
4634ff:	eb 09                	jmp    0x46350a
463501:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
463508:	f7 df                	neg    %edi
46350a:	89 38                	mov    %edi,(%eax)
46350c:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
463513:	8b 4d 0c             	mov    0xc(%ebp),%ecx
463516:	8d 45 cc             	lea    -0x34(%ebp),%eax
463519:	50                   	push   %eax
46351a:	8d 45 90             	lea    -0x70(%ebp),%eax
46351d:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
463524:	50                   	push   %eax
463525:	c7 45 ec 03 00 00 00 	movl   $0x3,-0x14(%ebp)
46352c:	e8 7f d7 fe ff       	call   0x450cb0
463531:	8b 4d 08             	mov    0x8(%ebp),%ecx
463534:	8d 45 90             	lea    -0x70(%ebp),%eax
463537:	50                   	push   %eax
463538:	8d 45 a4             	lea    -0x5c(%ebp),%eax
46353b:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
463542:	50                   	push   %eax
463543:	c7 45 ec 17 00 00 00 	movl   $0x17,-0x14(%ebp)
46354a:	e8 d1 d1 fe ff       	call   0x450720
46354f:	83 7d b4 01          	cmpl   $0x1,-0x4c(%ebp)
463553:	bb 3f 00 00 00       	mov    $0x3f,%ebx
463558:	74 19                	je     0x463573
46355a:	8d 45 b8             	lea    -0x48(%ebp),%eax
46355d:	50                   	push   %eax
46355e:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
463561:	e8 ba de fe ff       	call   0x451420
463566:	85 c0                	test   %eax,%eax
463568:	75 09                	jne    0x463573
46356a:	c6 45 f3 01          	movb   $0x1,-0xd(%ebp)
46356e:	eb 07                	jmp    0x463577
463570:	8b 75 c4             	mov    -0x3c(%ebp),%esi
463573:	c6 45 f3 00          	movb   $0x0,-0xd(%ebp)
463577:	f6 c3 08             	test   $0x8,%bl
46357a:	74 32                	je     0x4635ae
46357c:	8b 45 b0             	mov    -0x50(%ebp),%eax
46357f:	83 e3 f7             	and    $0xfffffff7,%ebx
463582:	8b 55 ac             	mov    -0x54(%ebp),%edx
463585:	8b f8                	mov    %eax,%edi
463587:	89 45 ec             	mov    %eax,-0x14(%ebp)
46358a:	8b ca                	mov    %edx,%ecx
46358c:	ff 75 ec             	push   -0x14(%ebp)
46358f:	33 c0                	xor    %eax,%eax
463591:	f3 ab                	rep stos %eax,%es:(%edi)
463593:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
46359a:	83 f8 10             	cmp    $0x10,%eax
46359d:	72 07                	jb     0x4635a6
46359f:	e8 bc 29 03 00       	call   0x495f60
4635a4:	eb 05                	jmp    0x4635ab
4635a6:	e8 d7 60 01 00       	call   0x479682
4635ab:	83 c4 04             	add    $0x4,%esp
4635ae:	f6 c3 04             	test   $0x4,%bl
4635b1:	74 32                	je     0x4635e5
4635b3:	8b 45 9c             	mov    -0x64(%ebp),%eax
4635b6:	83 e3 fb             	and    $0xfffffffb,%ebx
4635b9:	8b 55 98             	mov    -0x68(%ebp),%edx
4635bc:	8b f8                	mov    %eax,%edi
4635be:	89 45 ec             	mov    %eax,-0x14(%ebp)
4635c1:	8b ca                	mov    %edx,%ecx
4635c3:	ff 75 ec             	push   -0x14(%ebp)
4635c6:	33 c0                	xor    %eax,%eax
4635c8:	f3 ab                	rep stos %eax,%es:(%edi)
4635ca:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
4635d1:	83 f8 10             	cmp    $0x10,%eax
4635d4:	72 07                	jb     0x4635dd
4635d6:	e8 85 29 03 00       	call   0x495f60
4635db:	eb 05                	jmp    0x4635e2
4635dd:	e8 a0 60 01 00       	call   0x479682
4635e2:	83 c4 04             	add    $0x4,%esp
4635e5:	f6 c3 02             	test   $0x2,%bl
4635e8:	74 2a                	je     0x463614
4635ea:	8b 55 d8             	mov    -0x28(%ebp),%edx