438218:	8d 4c 24 24          	lea    0x24(%esp),%ecx
43821c:	e8 87 13 00 00       	call   0x4395a8
438221:	6a 01                	push   $0x1
438223:	ff 74 24 24          	push   0x24(%esp)
438227:	ff 15 4c c0 4a 00    	call   *0x4ac04c
43822d:	85 c0                	test   %eax,%eax
43822f:	74 04                	je     0x438235
438231:	89 44 24 24          	mov    %eax,0x24(%esp)
438235:	8b 0d 54 49 4a 00    	mov    0x4a4954,%ecx
43823b:	8d 54 24 18          	lea    0x18(%esp),%edx
43823f:	a1 58 49 4a 00       	mov    0x4a4958,%eax
438244:	51                   	push   %ecx
438245:	51                   	push   %ecx
438246:	52                   	push   %edx
438247:	51                   	push   %ecx
438248:	50                   	push   %eax
438249:	51                   	push   %ecx
43824a:	51                   	push   %ecx
43824b:	89 44 24 50          	mov    %eax,0x50(%esp)
43824f:	8d 44 24 44          	lea    0x44(%esp),%eax
438253:	53                   	push   %ebx
438254:	50                   	push   %eax
438255:	ff 35 4c 49 4a 00    	push   0x4a494c
43825b:	89 4c 24 58          	mov    %ecx,0x58(%esp)
43825f:	8d 4c 24 48          	lea    0x48(%esp),%ecx
438263:	89 5c 24 50          	mov    %ebx,0x50(%esp)
438267:	89 5c 24 54          	mov    %ebx,0x54(%esp)
43826b:	e8 5a 12 00 00       	call   0x4394ca
438270:	ff 74 24 20          	push   0x20(%esp)
438274:	ff 15 2c c0 4a 00    	call   *0x4ac02c
43827a:	ff 74 24 18          	push   0x18(%esp)
43827e:	ff 15 64 c0 4a 00    	call   *0x4ac064
438284:	8b 0d 5c 49 4a 00    	mov    0x4a495c,%ecx
43828a:	bb ff 00 00 00       	mov    $0xff,%ebx
43828f:	8a c3                	mov    %bl,%al
438291:	2a d9                	sub    %cl,%bl
438293:	2a 05 5e 49 4a 00    	sub    0x4a495e,%al
438299:	0f b6 d0             	movzbl %al,%edx
43829c:	8a c5                	mov    %ch,%al
43829e:	f6 d0                	not    %al
4382a0:	c1 e2 08             	shl    $0x8,%edx
4382a3:	0f b6 c0             	movzbl %al,%eax
4382a6:	0b d0                	or     %eax,%edx
4382a8:	0f b6 c3             	movzbl %bl,%eax
4382ab:	c1 e2 08             	shl    $0x8,%edx
4382ae:	0b d0                	or     %eax,%edx
4382b0:	8d 44 24 14          	lea    0x14(%esp),%eax
4382b4:	68 00 00 00 ff       	push   $0xff000000
4382b9:	50                   	push   %eax
4382ba:	89 15 5c 49 4a 00    	mov    %edx,0x4a495c
4382c0:	ff 76 04             	push   0x4(%esi)
4382c3:	ff 15 24 c0 4a 00    	call   *0x4ac024
4382c9:	85 c0                	test   %eax,%eax
4382cb:	74 03                	je     0x4382d0
4382cd:	89 46 08             	mov    %eax,0x8(%esi)
4382d0:	8b 1d 4c 49 4a 00    	mov    0x4a494c,%ebx
4382d6:	85 db                	test   %ebx,%ebx
4382d8:	74 16                	je     0x4382f0
4382da:	8b 03                	mov    (%ebx),%eax
4382dc:	6a 01                	push   $0x1
4382de:	8b 30                	mov    (%eax),%esi
4382e0:	8b ce                	mov    %esi,%ecx
4382e2:	ff 15 2c 81 4a 00    	call   *0x4a812c
4382e8:	8b cb                	mov    %ebx,%ecx
4382ea:	ff d6                	call   *%esi
4382ec:	8b 74 24 10          	mov    0x10(%esp),%esi
4382f0:	ff 35 50 49 4a 00    	push   0x4a4950
4382f6:	89 35 4c 49 4a 00    	mov    %esi,0x4a494c
4382fc:	ff 15 60 71 4a 00    	call   *0x4a7160
438302:	8b 44 24 14          	mov    0x14(%esp),%eax
438306:	a3 50 49 4a 00       	mov    %eax,0x4a4950
43830b:	68 34 49 4a 00       	push   $0x4a4934
438310:	8b cf                	mov    %edi,%ecx
438312:	e8 10 e4 ff ff       	call   0x436727
438317:	8b 8c 24 b4 00 00 00 	mov    0xb4(%esp),%ecx
43831e:	5f                   	pop    %edi
43831f:	5e                   	pop    %esi
438320:	5b                   	pop    %ebx
438321:	33 cc                	xor    %esp,%ecx
438323:	e8 d8 7b 05 00       	call   0x48ff00
438328:	8b e5                	mov    %ebp,%esp
43832a:	5d                   	pop    %ebp
43832b:	c3                   	ret
43832c:	cc                   	int3
43832d:	cc                   	int3
43832e:	cc                   	int3
43832f:	cc                   	int3
438330:	8b ff                	mov    %edi,%edi
438332:	55                   	push   %ebp
438333:	8b ec                	mov    %esp,%ebp
438335:	83 ec 30             	sub    $0x30,%esp
438338:	8b c1                	mov    %ecx,%eax
43833a:	8b 4d 08             	mov    0x8(%ebp),%ecx
43833d:	89 45 fc             	mov    %eax,-0x4(%ebp)
438340:	56                   	push   %esi
438341:	57                   	push   %edi
438342:	8d b0 98 00 00 00    	lea    0x98(%eax),%esi
438348:	89 75 f8             	mov    %esi,-0x8(%ebp)
43834b:	83 f9 26             	cmp    $0x26,%ecx
43834e:	0f 84 d6 00 00 00    	je     0x43842a
438354:	83 f9 28             	cmp    $0x28,%ecx
438357:	0f 84 cd 00 00 00    	je     0x43842a
43835d:	83 f9 25             	cmp    $0x25,%ecx
438360:	0f 84 c4 00 00 00    	je     0x43842a
438366:	83 f9 27             	cmp    $0x27,%ecx
438369:	0f 84 bb 00 00 00    	je     0x43842a
43836f:	8b 3d 08 57 4a 00    	mov    0x4a5708,%edi
438375:	85 ff                	test   %edi,%edi
438377:	74 1d                	je     0x438396
438379:	ff 75 10             	push   0x10(%ebp)
43837c:	8b 07                	mov    (%edi),%eax
43837e:	ff 75 0c             	push   0xc(%ebp)
438381:	51                   	push   %ecx
438382:	8b 70 10             	mov    0x10(%eax),%esi
438385:	8b ce                	mov    %esi,%ecx
438387:	ff 15 2c 81 4a 00    	call   *0x4a812c
43838d:	8b cf                	mov    %edi,%ecx
43838f:	ff d6                	call   *%esi
438391:	8b 4d 08             	mov    0x8(%ebp),%ecx
438394:	eb 02                	jmp    0x438398
438396:	32 c0                	xor    %al,%al
438398:	84 c0                	test   %al,%al
43839a:	0f 85 c8 00 00 00    	jne    0x438468
4383a0:	8b 3d 08 01 4a 00    	mov    0x4a0108,%edi
4383a6:	51                   	push   %ecx
4383a7:	8b 07                	mov    (%edi),%eax
4383a9:	8b 70 1c             	mov    0x1c(%eax),%esi
4383ac:	8b ce                	mov    %esi,%ecx
4383ae:	ff 15 2c 81 4a 00    	call   *0x4a812c
4383b4:	8b cf                	mov    %edi,%ecx
4383b6:	ff d6                	call   *%esi
4383b8:	84 c0                	test   %al,%al
4383ba:	0f 85 a8 00 00 00    	jne    0x438468
4383c0:	6a 11                	push   $0x11
4383c2:	ff 15 8c 7d 4a 00    	call   *0x4a7d8c
4383c8:	8b 75 fc             	mov    -0x4(%ebp),%esi
4383cb:	66 85 c0             	test   %ax,%ax
4383ce:	79 19                	jns    0x4383e9
4383d0:	83 7d 08 20          	cmpl   $0x20,0x8(%ebp)
4383d4:	0f 85 91 00 00 00    	jne    0x43846b
4383da:	8b ce                	mov    %esi,%ecx
4383dc:	e8 10 d4 ff ff       	call   0x4357f1
4383e1:	84 c0                	test   %al,%al
4383e3:	0f 85 82 00 00 00    	jne    0x43846b
4383e9:	83 7d 08 20          	cmpl   $0x20,0x8(%ebp)
4383ed:	75 7c                	jne    0x43846b
4383ef:	80 be d5 00 00 00 00 	cmpb   $0x0,0xd5(%esi)
4383f6:	75 73                	jne    0x43846b
4383f8:	33 c0                	xor    %eax,%eax
4383fa:	c6 86 d5 00 00 00 01 	movb   $0x1,0xd5(%esi)
438401:	89 45 d0             	mov    %eax,-0x30(%ebp)
438404:	89 45 d4             	mov    %eax,-0x2c(%ebp)
438407:	89 45 d8             	mov    %eax,-0x28(%ebp)
43840a:	89 45 dc             	mov    %eax,-0x24(%ebp)
43840d:	89 45 e4             	mov    %eax,-0x1c(%ebp)
438410:	89 45 e8             	mov    %eax,-0x18(%ebp)
438413:	8d 45 d0             	lea    -0x30(%ebp),%eax
438416:	6a 1c                	push   $0x1c
438418:	50                   	push   %eax
438419:	6a 01                	push   $0x1
43841b:	c7 45 e0 02 00 00 00 	movl   $0x2,-0x20(%ebp)
438422:	ff 15 44 7e 4a 00    	call   *0x4a7e44
438428:	eb 41                	jmp    0x43846b
43842a:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
43842e:	75 49                	jne    0x438479
438430:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
438434:	8d 45 ec             	lea    -0x14(%ebp),%eax
438437:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
43843b:	51                   	push   %ecx
43843c:	50                   	push   %eax
43843d:	c6 45 f4 00          	movb   $0x0,-0xc(%ebp)
438441:	e8 bd 14 00 00       	call   0x439903
438446:	ff 15 e0 71 4a 00    	call   *0x4a71e0
43844c:	89 46 18             	mov    %eax,0x18(%esi)
43844f:	83 ec 0c             	sub    $0xc,%esp
438452:	8b fc                	mov    %esp,%edi
438454:	8d 75 ec             	lea    -0x14(%ebp),%esi
438457:	a5                   	movsl  %ds:(%esi),%es:(%edi)
438458:	a5                   	movsl  %ds:(%esi),%es:(%edi)
438459:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43845a:	8b 75 f8             	mov    -0x8(%ebp),%esi
43845d:	8b ce                	mov    %esi,%ecx
43845f:	e8 db 14 00 00       	call   0x43993f
438464:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
438468:	8b 75 fc             	mov    -0x4(%ebp),%esi
43846b:	8b ce                	mov    %esi,%ecx
43846d:	ff 15 1c 77 4a 00    	call   *0x4a771c
438473:	5f                   	pop    %edi
438474:	5e                   	pop    %esi
438475:	c9                   	leave
438476:	c2 0c 00             	ret    $0xc
438479:	8b f0                	mov    %eax,%esi
43847b:	eb ee                	jmp    0x43846b
43847d:	8b ff                	mov    %edi,%edi
43847f:	55                   	push   %ebp
438480:	8b ec                	mov    %esp,%ebp
438482:	83 e4 f8             	and    $0xfffffff8,%esp
438485:	83 ec 1c             	sub    $0x1c,%esp
438488:	53                   	push   %ebx
438489:	56                   	push   %esi
43848a:	57                   	push   %edi
43848b:	be 34 49 4a 00       	mov    $0x4a4934,%esi
438490:	8d 7c 24 18          	lea    0x18(%esp),%edi
438494:	8b d9                	mov    %ecx,%ebx
438496:	a5                   	movsl  %ds:(%esi),%es:(%edi)
438497:	a5                   	movsl  %ds:(%esi),%es:(%edi)
438498:	a5                   	movsl  %ds:(%esi),%es:(%edi)
438499:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43849a:	8b 44 24 20          	mov    0x20(%esp),%eax
43849e:	03 44 24 18          	add    0x18(%esp),%eax
4384a2:	99                   	cltd
4384a3:	2b c2                	sub    %edx,%eax
4384a5:	8b 54 24 1c          	mov    0x1c(%esp),%edx
4384a9:	8b f0                	mov    %eax,%esi
4384ab:	8b 44 24 24          	mov    0x24(%esp),%eax
4384af:	d1 fe                	sar    $1,%esi
4384b1:	89 74 24 10          	mov    %esi,0x10(%esp)
4384b5:	8d 04 10             	lea    (%eax,%edx,1),%eax
4384b8:	99                   	cltd
4384b9:	2b c2                	sub    %edx,%eax
4384bb:	d1 f8                	sar    $1,%eax
4384bd:	50                   	push   %eax
4384be:	56                   	push   %esi
4384bf:	be 00 01 00 00       	mov    $0x100,%esi
4384c4:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4384c8:	56                   	push   %esi
4384c9:	e8 e9 ce ff ff       	call   0x4353b7
4384ce:	8d 44 24 10          	lea    0x10(%esp),%eax
4384d2:	8b cb                	mov    %ebx,%ecx
4384d4:	50                   	push   %eax
4384d5:	e8 95 be ff ff       	call   0x43436f
4384da:	8b 44 24 14          	mov    0x14(%esp),%eax
4384de:	03 45 0c             	add    0xc(%ebp),%eax
4384e1:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4384e5:	03 4d 08             	add    0x8(%ebp),%ecx
4384e8:	50                   	push   %eax
4384e9:	51                   	push   %ecx
4384ea:	56                   	push   %esi
4384eb:	8b cb                	mov    %ebx,%ecx
4384ed:	e8 9c d0 ff ff       	call   0x43558e
4384f2:	5f                   	pop    %edi
4384f3:	5e                   	pop    %esi
4384f4:	5b                   	pop    %ebx
4384f5:	8b e5                	mov    %ebp,%esp
4384f7:	5d                   	pop    %ebp
4384f8:	c2 08 00             	ret    $0x8
4384fb:	cc                   	int3
4384fc:	cc                   	int3
4384fd:	cc                   	int3
4384fe:	cc                   	int3
4384ff:	cc                   	int3
438500:	8b ff                	mov    %edi,%edi
438502:	55                   	push   %ebp
438503:	8b ec                	mov    %esp,%ebp
438505:	83 ec 1c             	sub    $0x1c,%esp
438508:	83 7d 08 20          	cmpl   $0x20,0x8(%ebp)
43850c:	56                   	push   %esi
43850d:	8b f1                	mov    %ecx,%esi
43850f:	75 3a                	jne    0x43854b
438511:	80 be d5 00 00 00 00 	cmpb   $0x0,0xd5(%esi)
438518:	74 31                	je     0x43854b
43851a:	53                   	push   %ebx
43851b:	33 db                	xor    %ebx,%ebx
43851d:	c7 45 f4 04 00 00 00 	movl   $0x4,-0xc(%ebp)
438524:	6a 1c                	push   $0x1c
438526:	8d 45 e4             	lea    -0x1c(%ebp),%eax
438529:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
43852c:	50                   	push   %eax
43852d:	6a 01                	push   $0x1
43852f:	89 5d e8             	mov    %ebx,-0x18(%ebp)
438532:	89 5d ec             	mov    %ebx,-0x14(%ebp)
438535:	89 5d f0             	mov    %ebx,-0x10(%ebp)
438538:	89 5d f8             	mov    %ebx,-0x8(%ebp)
43853b:	89 5d fc             	mov    %ebx,-0x4(%ebp)
43853e:	ff 15 44 7e 4a 00    	call   *0x4a7e44
438544:	88 9e d5 00 00 00    	mov    %bl,0xd5(%esi)
43854a:	5b                   	pop    %ebx
43854b:	8b ce                	mov    %esi,%ecx
43854d:	ff 15 1c 77 4a 00    	call   *0x4a771c
438553:	5e                   	pop    %esi
438554:	c9                   	leave
438555:	c2 0c 00             	ret    $0xc
438558:	cc                   	int3
438559:	cc                   	int3
43855a:	cc                   	int3
43855b:	cc                   	int3
43855c:	cc                   	int3
43855d:	cc                   	int3
43855e:	cc                   	int3
43855f:	cc                   	int3
438560:	8b ff                	mov    %edi,%edi
438562:	55                   	push   %ebp
438563:	8b ec                	mov    %esp,%ebp
438565:	8b 15 74 65 4a 00    	mov    0x4a6574,%edx
43856b:	33 c0                	xor    %eax,%eax
43856d:	85 d2                	test   %edx,%edx
43856f:	74 33                	je     0x4385a4
438571:	8b 4a 48             	mov    0x48(%edx),%ecx
438574:	85 c9                	test   %ecx,%ecx
438576:	74 2c                	je     0x4385a4
438578:	8b 49 0c             	mov    0xc(%ecx),%ecx
43857b:	8b 45 08             	mov    0x8(%ebp),%eax
43857e:	89 08                	mov    %ecx,(%eax)
438580:	8b 42 48             	mov    0x48(%edx),%eax
438583:	8b 48 2c             	mov    0x2c(%eax),%ecx
438586:	8b 45 0c             	mov    0xc(%ebp),%eax
438589:	89 08                	mov    %ecx,(%eax)
43858b:	8b 42 48             	mov    0x48(%edx),%eax
43858e:	8b 48 30             	mov    0x30(%eax),%ecx
438591:	8b 45 10             	mov    0x10(%ebp),%eax
438594:	89 08                	mov    %ecx,(%eax)
438596:	8b 42 48             	mov    0x48(%edx),%eax
438599:	8b 48 38             	mov    0x38(%eax),%ecx
43859c:	8b 45 14             	mov    0x14(%ebp),%eax
43859f:	89 08                	mov    %ecx,(%eax)
4385a1:	33 c0                	xor    %eax,%eax
4385a3:	40                   	inc    %eax
4385a4:	5d                   	pop    %ebp
4385a5:	c2 10 00             	ret    $0x10
4385a8:	cc                   	int3
4385a9:	cc                   	int3
4385aa:	cc                   	int3
4385ab:	cc                   	int3
4385ac:	cc                   	int3
4385ad:	cc                   	int3
4385ae:	cc                   	int3
4385af:	cc                   	int3
4385b0:	8b ff                	mov    %edi,%edi
4385b2:	55                   	push   %ebp
4385b3:	8b ec                	mov    %esp,%ebp
4385b5:	83 e4 f8             	and    $0xfffffff8,%esp
4385b8:	51                   	push   %ecx
4385b9:	56                   	push   %esi
4385ba:	6a 00                	push   $0x0
4385bc:	ff 75 08             	push   0x8(%ebp)
4385bf:	8b f1                	mov    %ecx,%esi
4385c1:	e8 d0 ac ff ff       	call   0x433296
4385c6:	8b ce                	mov    %esi,%ecx
4385c8:	e8 8f 01 00 00       	call   0x43875c
4385cd:	33 c0                	xor    %eax,%eax
4385cf:	40                   	inc    %eax
4385d0:	5e                   	pop    %esi
4385d1:	8b e5                	mov    %ebp,%esp
4385d3:	5d                   	pop    %ebp
4385d4:	c2 04 00             	ret    $0x4
4385d7:	cc                   	int3
4385d8:	cc                   	int3
4385d9:	cc                   	int3
4385da:	cc                   	int3
4385db:	cc                   	int3