504015:	5e                   	pop    %esi
504016:	5d                   	pop    %ebp
504017:	59                   	pop    %ecx
504018:	c3                   	ret
504019:	85 ff                	test   %edi,%edi
50401b:	75 13                	jne    0x504030
50401d:	ff 74 24 28          	push   0x28(%esp)
504021:	55                   	push   %ebp
504022:	53                   	push   %ebx
504023:	e8 a8 ed 0c 00       	call   0x5d2dd0
504028:	83 c4 0c             	add    $0xc,%esp
50402b:	e9 61 01 00 00       	jmp    0x504191
504030:	81 fe 0a 04 00 00    	cmp    $0x40a,%esi
504036:	74 18                	je     0x504050
504038:	81 fe 3f 04 00 00    	cmp    $0x43f,%esi
50403e:	74 10                	je     0x504050
504040:	33 c0                	xor    %eax,%eax
504042:	81 fe 0b 04 00 00    	cmp    $0x40b,%esi
504048:	0f 95 c0             	setne  %al
50404b:	83 c0 38             	add    $0x38,%eax
50404e:	eb 05                	jmp    0x504055
504050:	b8 20 00 00 00       	mov    $0x20,%eax
504055:	6a 50                	push   $0x50
504057:	68 2c a6 62 00       	push   $0x62a62c
50405c:	50                   	push   %eax
50405d:	e8 ce 00 fe ff       	call   0x4e4130
504062:	8b f8                	mov    %eax,%edi
504064:	83 c4 0c             	add    $0xc,%esp
504067:	89 7b 3c             	mov    %edi,0x3c(%ebx)
50406a:	85 ff                	test   %edi,%edi
50406c:	75 1a                	jne    0x504088
50406e:	6a 52                	push   $0x52
504070:	68 2c a6 62 00       	push   $0x62a62c
504075:	6a 41                	push   $0x41
504077:	68 0a 01 00 00       	push   $0x10a
50407c:	6a 10                	push   $0x10
50407e:	e8 fd 4e fd ff       	call   0x4d8f80
504083:	83 c4 14             	add    $0x14,%esp
504086:	eb 55                	jmp    0x5040dd
504088:	83 7c 24 2c 02       	cmpl   $0x2,0x2c(%esp)
50408d:	0f 85 90 00 00 00    	jne    0x504123
504093:	81 fe 0a 04 00 00    	cmp    $0x40a,%esi
504099:	74 18                	je     0x5040b3
50409b:	81 fe 3f 04 00 00    	cmp    $0x43f,%esi
5040a1:	74 10                	je     0x5040b3
5040a3:	33 c0                	xor    %eax,%eax
5040a5:	81 fe 0b 04 00 00    	cmp    $0x40b,%esi
5040ab:	0f 95 c0             	setne  %al
5040ae:	83 c0 38             	add    $0x38,%eax
5040b1:	eb 05                	jmp    0x5040b8
5040b3:	b8 20 00 00 00       	mov    $0x20,%eax
5040b8:	50                   	push   %eax
5040b9:	57                   	push   %edi
5040ba:	e8 51 d2 fd ff       	call   0x4e1310
5040bf:	83 c4 08             	add    $0x8,%esp
5040c2:	85 c0                	test   %eax,%eax
5040c4:	7f 2f                	jg     0x5040f5
5040c6:	6a 57                	push   $0x57
5040c8:	68 2c a6 62 00       	push   $0x62a62c
5040cd:	57                   	push   %edi
5040ce:	e8 4d 00 fe ff       	call   0x4e4120
5040d3:	83 c4 0c             	add    $0xc,%esp
5040d6:	c7 43 3c 00 00 00 00 	movl   $0x0,0x3c(%ebx)
5040dd:	6a 79                	push   $0x79
5040df:	68 2c a6 62 00       	push   $0x62a62c
5040e4:	53                   	push   %ebx
5040e5:	e8 96 c6 fd ff       	call   0x4e0780
5040ea:	83 c4 0c             	add    $0xc,%esp
5040ed:	33 c0                	xor    %eax,%eax
5040ef:	5b                   	pop    %ebx
5040f0:	5f                   	pop    %edi
5040f1:	5e                   	pop    %esi
5040f2:	5d                   	pop    %ebp
5040f3:	59                   	pop    %ecx
5040f4:	c3                   	ret
5040f5:	81 fe 0a 04 00 00    	cmp    $0x40a,%esi
5040fb:	75 15                	jne    0x504112
5040fd:	8a 47 1f             	mov    0x1f(%edi),%al
504100:	80 27 f8             	andb   $0xf8,(%edi)
504103:	24 3f                	and    $0x3f,%al
504105:	0c 40                	or     $0x40,%al
504107:	88 47 1f             	mov    %al,0x1f(%edi)
50410a:	8d 86 f6 fb ff ff    	lea    -0x40a(%esi),%eax
504110:	eb 4c                	jmp    0x50415e
504112:	81 fe 0b 04 00 00    	cmp    $0x40b,%esi
504118:	75 39                	jne    0x504153
50411a:	80 27 fc             	andb   $0xfc,(%edi)
50411d:	80 4f 37 80          	orb    $0x80,0x37(%edi)
504121:	eb 30                	jmp    0x504153
504123:	81 fe 0a 04 00 00    	cmp    $0x40a,%esi
504129:	74 18                	je     0x504143
50412b:	81 fe 3f 04 00 00    	cmp    $0x43f,%esi
504131:	74 10                	je     0x504143
504133:	33 c0                	xor    %eax,%eax
504135:	81 fe 0b 04 00 00    	cmp    $0x40b,%esi
50413b:	0f 95 c0             	setne  %al
50413e:	83 c0 38             	add    $0x38,%eax
504141:	eb 05                	jmp    0x504148
504143:	b8 20 00 00 00       	mov    $0x20,%eax
504148:	50                   	push   %eax
504149:	55                   	push   %ebp
50414a:	57                   	push   %edi
50414b:	e8 80 ec 0c 00       	call   0x5d2dd0
504150:	83 c4 0c             	add    $0xc,%esp
504153:	8d 86 f6 fb ff ff    	lea    -0x40a(%esi),%eax
504159:	83 f8 36             	cmp    $0x36,%eax
50415c:	77 33                	ja     0x504191
50415e:	0f b6 80 c0 41 50 00 	movzbl 0x5041c0(%eax),%eax
504165:	ff 24 85 ac 41 50 00 	jmp    *0x5041ac(,%eax,4)
50416c:	57                   	push   %edi
50416d:	53                   	push   %ebx
50416e:	e8 2d d4 01 00       	call   0x5215a0
504173:	eb 19                	jmp    0x50418e
504175:	57                   	push   %edi
504176:	53                   	push   %ebx
504177:	e8 64 cf 01 00       	call   0x5210e0
50417c:	eb 10                	jmp    0x50418e
50417e:	57                   	push   %edi
50417f:	53                   	push   %ebx
504180:	e8 cb 8c 02 00       	call   0x52ce50
504185:	eb 07                	jmp    0x50418e
504187:	57                   	push   %edi
504188:	53                   	push   %ebx
504189:	e8 62 b0 02 00       	call   0x52f1f0
50418e:	83 c4 08             	add    $0x8,%esp
504191:	53                   	push   %ebx
504192:	56                   	push   %esi
504193:	ff 74 24 20          	push   0x20(%esp)
504197:	e8 44 c9 fe ff       	call   0x4f0ae0
50419c:	83 c4 0c             	add    $0xc,%esp
50419f:	b8 01 00 00 00       	mov    $0x1,%eax
5041a4:	5b                   	pop    %ebx
5041a5:	5f                   	pop    %edi
5041a6:	5e                   	pop    %esi
5041a7:	5d                   	pop    %ebp
5041a8:	59                   	pop    %ecx
5041a9:	c3                   	ret
5041aa:	66 90                	xchg   %ax,%ax
5041ac:	6c                   	insb   (%dx),%es:(%edi)
5041ad:	41                   	inc    %ecx
5041ae:	50                   	push   %eax
5041af:	00 7e 41             	add    %bh,0x41(%esi)
5041b2:	50                   	push   %eax
5041b3:	00 75 41             	add    %dh,0x41(%ebp)
5041b6:	50                   	push   %eax
5041b7:	00 87 41 50 00 91    	add    %al,-0x6effafbf(%edi)
5041bd:	41                   	inc    %ecx
5041be:	50                   	push   %eax
5041bf:	00 00                	add    %al,(%eax)
5041c1:	01 04 04             	add    %eax,(%esp,%eax,1)
5041c4:	04 04                	add    $0x4,%al
5041c6:	04 04                	add    $0x4,%al
5041c8:	04 04                	add    $0x4,%al
5041ca:	04 04                	add    $0x4,%al
5041cc:	04 04                	add    $0x4,%al
5041ce:	04 04                	add    $0x4,%al
5041d0:	04 04                	add    $0x4,%al
5041d2:	04 04                	add    $0x4,%al
5041d4:	04 04                	add    $0x4,%al
5041d6:	04 04                	add    $0x4,%al
5041d8:	04 04                	add    $0x4,%al
5041da:	04 04                	add    $0x4,%al
5041dc:	04 04                	add    $0x4,%al
5041de:	04 04                	add    $0x4,%al
5041e0:	04 04                	add    $0x4,%al
5041e2:	04 04                	add    $0x4,%al
5041e4:	04 04                	add    $0x4,%al
5041e6:	04 04                	add    $0x4,%al
5041e8:	04 04                	add    $0x4,%al
5041ea:	04 04                	add    $0x4,%al
5041ec:	04 04                	add    $0x4,%al
5041ee:	04 04                	add    $0x4,%al
5041f0:	04 04                	add    $0x4,%al
5041f2:	04 04                	add    $0x4,%al
5041f4:	04 02                	add    $0x2,%al
5041f6:	03 cc                	add    %esp,%ecx
5041f8:	cc                   	int3
5041f9:	cc                   	int3
5041fa:	cc                   	int3
5041fb:	cc                   	int3
5041fc:	cc                   	int3
5041fd:	cc                   	int3
5041fe:	cc                   	int3
5041ff:	cc                   	int3
504200:	53                   	push   %ebx
504201:	55                   	push   %ebp
504202:	8b 6c 24 10          	mov    0x10(%esp),%ebp
504206:	56                   	push   %esi
504207:	57                   	push   %edi
504208:	8b 45 0c             	mov    0xc(%ebp),%eax
50420b:	8b 5d 18             	mov    0x18(%ebp),%ebx
50420e:	ff 30                	push   (%eax)
504210:	e8 2b b2 fe ff       	call   0x4ef440
504215:	83 c4 04             	add    $0x4,%esp
504218:	83 7c 24 24 01       	cmpl   $0x1,0x24(%esp)
50421d:	0f 85 9a 00 00 00    	jne    0x5042bd
504223:	85 db                	test   %ebx,%ebx
504225:	0f 84 82 00 00 00    	je     0x5042ad
50422b:	83 7b 3c 00          	cmpl   $0x0,0x3c(%ebx)
50422f:	74 7c                	je     0x5042ad
504231:	8b 74 24 1c          	mov    0x1c(%esp),%esi
504235:	8b 7c 24 14          	mov    0x14(%esp),%edi
504239:	50                   	push   %eax
50423a:	68 64 25 60 00       	push   $0x602564
50423f:	56                   	push   %esi
504240:	68 60 a6 62 00       	push   $0x62a660
504245:	57                   	push   %edi
504246:	e8 f5 e2 fd ff       	call   0x4e2540
50424b:	83 c4 14             	add    $0x14,%esp
50424e:	85 c0                	test   %eax,%eax
504250:	7e 54                	jle    0x5042a6
504252:	68 64 25 60 00       	push   $0x602564
504257:	56                   	push   %esi
504258:	68 74 a6 62 00       	push   $0x62a674
50425d:	57                   	push   %edi
50425e:	e8 dd e2 fd ff       	call   0x4e2540
504263:	83 c4 10             	add    $0x10,%esp
504266:	85 c0                	test   %eax,%eax
504268:	7e 3c                	jle    0x5042a6
50426a:	8b 45 0c             	mov    0xc(%ebp),%eax
50426d:	8b 00                	mov    (%eax),%eax
50426f:	3d 0a 04 00 00       	cmp    $0x40a,%eax
504274:	74 16                	je     0x50428c
504276:	3d 3f 04 00 00       	cmp    $0x43f,%eax
50427b:	74 0f                	je     0x50428c
50427d:	33 c9                	xor    %ecx,%ecx
50427f:	3d 0b 04 00 00       	cmp    $0x40b,%eax
504284:	0f 95 c1             	setne  %cl
504287:	83 c1 38             	add    $0x38,%ecx
50428a:	eb 05                	jmp    0x504291
50428c:	b9 20 00 00 00       	mov    $0x20,%ecx
504291:	8d 46 04             	lea    0x4(%esi),%eax
504294:	50                   	push   %eax
504295:	51                   	push   %ecx
504296:	ff 73 3c             	push   0x3c(%ebx)
504299:	57                   	push   %edi
50429a:	e8 91 c3 01 00       	call   0x520630
50429f:	83 c4 10             	add    $0x10,%esp
5042a2:	85 c0                	test   %eax,%eax
5042a4:	75 61                	jne    0x504307
5042a6:	5f                   	pop    %edi
5042a7:	5e                   	pop    %esi
5042a8:	5d                   	pop    %ebp
5042a9:	33 c0                	xor    %eax,%eax
5042ab:	5b                   	pop    %ebx
5042ac:	c3                   	ret
5042ad:	68 64 25 60 00       	push   $0x602564
5042b2:	ff 74 24 20          	push   0x20(%esp)
5042b6:	68 44 a6 62 00       	push   $0x62a644
5042bb:	eb 12                	jmp    0x5042cf
5042bd:	85 db                	test   %ebx,%ebx
5042bf:	75 25                	jne    0x5042e6
5042c1:	68 64 25 60 00       	push   $0x602564
5042c6:	ff 74 24 20          	push   0x20(%esp)
5042ca:	68 80 a6 62 00       	push   $0x62a680
5042cf:	ff 74 24 20          	push   0x20(%esp)
5042d3:	e8 68 e2 fd ff       	call   0x4e2540
5042d8:	83 c4 10             	add    $0x10,%esp
5042db:	85 c0                	test   %eax,%eax
5042dd:	7f 7e                	jg     0x50435d
5042df:	5f                   	pop    %edi
5042e0:	5e                   	pop    %esi
5042e1:	5d                   	pop    %ebp
5042e2:	33 c0                	xor    %eax,%eax
5042e4:	5b                   	pop    %ebx
5042e5:	c3                   	ret
5042e6:	8b 74 24 1c          	mov    0x1c(%esp),%esi
5042ea:	8b 7c 24 14          	mov    0x14(%esp),%edi
5042ee:	50                   	push   %eax
5042ef:	68 64 25 60 00       	push   $0x602564
5042f4:	56                   	push   %esi
5042f5:	68 9c a6 62 00       	push   $0x62a69c
5042fa:	57                   	push   %edi
5042fb:	e8 40 e2 fd ff       	call   0x4e2540
504300:	83 c4 14             	add    $0x14,%esp
504303:	85 c0                	test   %eax,%eax
504305:	7e 9f                	jle    0x5042a6
504307:	68 64 25 60 00       	push   $0x602564
50430c:	56                   	push   %esi
50430d:	68 b0 a6 62 00       	push   $0x62a6b0
504312:	57                   	push   %edi
504313:	e8 28 e2 fd ff       	call   0x4e2540
504318:	83 c4 10             	add    $0x10,%esp
50431b:	85 c0                	test   %eax,%eax
50431d:	7e 87                	jle    0x5042a6
50431f:	8b 45 0c             	mov    0xc(%ebp),%eax
504322:	8b 00                	mov    (%eax),%eax
504324:	3d 0a 04 00 00       	cmp    $0x40a,%eax
504329:	74 16                	je     0x504341
50432b:	3d 3f 04 00 00       	cmp    $0x43f,%eax
504330:	74 0f                	je     0x504341
504332:	33 c9                	xor    %ecx,%ecx
504334:	3d 0b 04 00 00       	cmp    $0x40b,%eax
504339:	0f 95 c1             	setne  %cl
50433c:	83 c1 38             	add    $0x38,%ecx
50433f:	eb 05                	jmp    0x504346
504341:	b9 20 00 00 00       	mov    $0x20,%ecx
504346:	8d 46 04             	lea    0x4(%esi),%eax
504349:	50                   	push   %eax
50434a:	51                   	push   %ecx
50434b:	53                   	push   %ebx
50434c:	57                   	push   %edi
50434d:	e8 de c2 01 00       	call   0x520630
504352:	83 c4 10             	add    $0x10,%esp
504355:	85 c0                	test   %eax,%eax
504357:	0f 84 49 ff ff ff    	je     0x5042a6
50435d:	5f                   	pop    %edi
50435e:	5e                   	pop    %esi
50435f:	5d                   	pop    %ebp
504360:	b8 01 00 00 00       	mov    $0x1,%eax
504365:	5b                   	pop    %ebx
504366:	c3                   	ret
504367:	cc                   	int3
504368:	cc                   	int3
504369:	cc                   	int3
50436a:	cc                   	int3
50436b:	cc                   	int3
50436c:	cc                   	int3
50436d:	cc                   	int3
50436e:	cc                   	int3
50436f:	cc                   	int3
504370:	8b 44 24 04          	mov    0x4(%esp),%eax
504374:	8b 48 08             	mov    0x8(%eax),%ecx
504377:	85 c9                	test   %ecx,%ecx
504379:	74 60                	je     0x5043db
50437b:	8b 50 0c             	mov    0xc(%eax),%edx
50437e:	85 d2                	test   %edx,%edx
504380:	74 59                	je     0x5043db
504382:	8b 41 18             	mov    0x18(%ecx),%eax
504385:	56                   	push   %esi
504386:	85 c0                	test   %eax,%eax
504388:	74 32                	je     0x5043bc
50438a:	8b 70 3c             	mov    0x3c(%eax),%esi
50438d:	85 f6                	test   %esi,%esi
50438f:	74 2b                	je     0x5043bc
504391:	8b 4a 18             	mov    0x18(%edx),%ecx
504394:	85 c9                	test   %ecx,%ecx
504396:	75 11                	jne    0x5043a9
504398:	68 a3 02 00 00       	push   $0x2a3
50439d:	68 2c a6 62 00       	push   $0x62a62c
5043a2:	68 85 00 00 00       	push   $0x85
5043a7:	eb 1f                	jmp    0x5043c8
5043a9:	8b 44 24 14          	mov    0x14(%esp),%eax
5043ad:	89 30                	mov    %esi,(%eax)
5043af:	8b 44 24 18          	mov    0x18(%esp),%eax
5043b3:	5e                   	pop    %esi
5043b4:	89 08                	mov    %ecx,(%eax)
5043b6:	b8 01 00 00 00       	mov    $0x1,%eax
5043bb:	c3                   	ret
5043bc:	68 9f 02 00 00       	push   $0x29f