57318c:	85 c0                	test   %eax,%eax
57318e:	75 01                	jne    0x573191
573190:	c3                   	ret
573191:	ff 74 24 08          	push   0x8(%esp)
573195:	50                   	push   %eax
573196:	e8 95 af 00 00       	call   0x57e130
57319b:	83 c4 08             	add    $0x8,%esp
57319e:	b8 01 00 00 00       	mov    $0x1,%eax
5731a3:	c3                   	ret
5731a4:	cc                   	int3
5731a5:	cc                   	int3
5731a6:	cc                   	int3
5731a7:	cc                   	int3
5731a8:	cc                   	int3
5731a9:	cc                   	int3
5731aa:	cc                   	int3
5731ab:	cc                   	int3
5731ac:	cc                   	int3
5731ad:	cc                   	int3
5731ae:	cc                   	int3
5731af:	cc                   	int3
5731b0:	b8 04 00 00 00       	mov    $0x4,%eax
5731b5:	e8 36 e3 06 00       	call   0x5e14f0
5731ba:	53                   	push   %ebx
5731bb:	8b 5c 24 10          	mov    0x10(%esp),%ebx
5731bf:	56                   	push   %esi
5731c0:	57                   	push   %edi
5731c1:	8b 7c 24 14          	mov    0x14(%esp),%edi
5731c5:	33 f6                	xor    %esi,%esi
5731c7:	53                   	push   %ebx
5731c8:	89 74 24 10          	mov    %esi,0x10(%esp)
5731cc:	89 37                	mov    %esi,(%edi)
5731ce:	e8 4d de f1 ff       	call   0x491020
5731d3:	83 c4 04             	add    $0x4,%esp
5731d6:	83 f8 40             	cmp    $0x40,%eax
5731d9:	75 08                	jne    0x5731e3
5731db:	5f                   	pop    %edi
5731dc:	8d 46 01             	lea    0x1(%esi),%eax
5731df:	5e                   	pop    %esi
5731e0:	5b                   	pop    %ebx
5731e1:	59                   	pop    %ecx
5731e2:	c3                   	ret
5731e3:	53                   	push   %ebx
5731e4:	e8 37 de f1 ff       	call   0x491020
5731e9:	83 c4 04             	add    $0x4,%esp
5731ec:	83 f8 40             	cmp    $0x40,%eax
5731ef:	74 15                	je     0x573206
5731f1:	e8 aa ae 00 00       	call   0x57e0a0
5731f6:	8b f0                	mov    %eax,%esi
5731f8:	85 f6                	test   %esi,%esi
5731fa:	74 55                	je     0x573251
5731fc:	53                   	push   %ebx
5731fd:	56                   	push   %esi
5731fe:	e8 2d af 00 00       	call   0x57e130
573203:	83 c4 08             	add    $0x8,%esp
573206:	8d 44 24 0c          	lea    0xc(%esp),%eax
57320a:	50                   	push   %eax
57320b:	e8 20 ae 00 00       	call   0x57e030
573210:	50                   	push   %eax
573211:	56                   	push   %esi
573212:	e8 09 46 01 00       	call   0x587820
573217:	83 c4 0c             	add    $0xc,%esp
57321a:	85 c0                	test   %eax,%eax
57321c:	74 33                	je     0x573251
57321e:	e8 7d ae 00 00       	call   0x57e0a0
573223:	89 07                	mov    %eax,(%edi)
573225:	85 c0                	test   %eax,%eax
573227:	74 28                	je     0x573251
573229:	ff 74 24 0c          	push   0xc(%esp)
57322d:	6a 10                	push   $0x10
57322f:	68 8f 03 00 00       	push   $0x38f
573234:	e8 87 46 f3 ff       	call   0x4a78c0
573239:	83 c4 04             	add    $0x4,%esp
57323c:	50                   	push   %eax
57323d:	ff 37                	push   (%edi)
57323f:	e8 6c ae 00 00       	call   0x57e0b0
573244:	83 c4 10             	add    $0x10,%esp
573247:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
57324e:	00
57324f:	eb 11                	jmp    0x573262
573251:	8b 44 24 0c          	mov    0xc(%esp),%eax
573255:	85 c0                	test   %eax,%eax
573257:	74 09                	je     0x573262
573259:	50                   	push   %eax
57325a:	e8 21 e7 f3 ff       	call   0x4b1980
57325f:	83 c4 04             	add    $0x4,%esp
573262:	85 f6                	test   %esi,%esi
573264:	74 09                	je     0x57326f
573266:	56                   	push   %esi
573267:	e8 d4 ad 00 00       	call   0x57e040
57326c:	83 c4 04             	add    $0x4,%esp
57326f:	33 c0                	xor    %eax,%eax
573271:	39 07                	cmp    %eax,(%edi)
573273:	5f                   	pop    %edi
573274:	5e                   	pop    %esi
573275:	0f 95 c0             	setne  %al
573278:	5b                   	pop    %ebx
573279:	59                   	pop    %ecx
57327a:	c3                   	ret
57327b:	cc                   	int3
57327c:	cc                   	int3
57327d:	cc                   	int3
57327e:	cc                   	int3
57327f:	cc                   	int3
573280:	56                   	push   %esi
573281:	8b 74 24 08          	mov    0x8(%esp),%esi
573285:	85 f6                	test   %esi,%esi
573287:	74 3f                	je     0x5732c8
573289:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
57328d:	74 39                	je     0x5732c8
57328f:	ff 36                	push   (%esi)
573291:	e8 4a 47 f3 ff       	call   0x4a79e0
573296:	83 c4 04             	add    $0x4,%esp
573299:	3d 8f 03 00 00       	cmp    $0x38f,%eax
57329e:	75 28                	jne    0x5732c8
5732a0:	8b 4e 04             	mov    0x4(%esi),%ecx
5732a3:	83 39 10             	cmpl   $0x10,(%ecx)
5732a6:	75 20                	jne    0x5732c8
5732a8:	8b 41 04             	mov    0x4(%ecx),%eax
5732ab:	8b 40 08             	mov    0x8(%eax),%eax
5732ae:	89 44 24 08          	mov    %eax,0x8(%esp)
5732b2:	8b 41 04             	mov    0x4(%ecx),%eax
5732b5:	ff 30                	push   (%eax)
5732b7:	8d 44 24 0c          	lea    0xc(%esp),%eax
5732bb:	50                   	push   %eax
5732bc:	6a 00                	push   $0x0
5732be:	e8 ad ae 00 00       	call   0x57e170
5732c3:	83 c4 0c             	add    $0xc,%esp
5732c6:	5e                   	pop    %esi
5732c7:	c3                   	ret
5732c8:	33 c0                	xor    %eax,%eax
5732ca:	5e                   	pop    %esi
5732cb:	c3                   	ret
5732cc:	cc                   	int3
5732cd:	cc                   	int3
5732ce:	cc                   	int3
5732cf:	cc                   	int3
5732d0:	8b 44 24 04          	mov    0x4(%esp),%eax
5732d4:	85 c0                	test   %eax,%eax
5732d6:	0f 84 04 e5 f3 ff    	je     0x4b17e0
5732dc:	ff 30                	push   (%eax)
5732de:	e8 fd 46 f3 ff       	call   0x4a79e0
5732e3:	83 c4 04             	add    $0x4,%esp
5732e6:	3d 8f 03 00 00       	cmp    $0x38f,%eax
5732eb:	74 21                	je     0x57330e
5732ed:	68 01 02 00 00       	push   $0x201
5732f2:	68 34 cb 6b 00       	push   $0x6bcb34
5732f7:	68 99 00 00 00       	push   $0x99
5732fc:	68 9f 00 00 00       	push   $0x9f
573301:	6a 04                	push   $0x4
573303:	e8 98 e1 f2 ff       	call   0x4a14a0
573308:	83 c4 14             	add    $0x14,%esp
57330b:	33 c0                	xor    %eax,%eax
57330d:	c3                   	ret
57330e:	8b 44 24 08          	mov    0x8(%esp),%eax
573312:	85 c0                	test   %eax,%eax
573314:	75 21                	jne    0x573337
573316:	68 05 02 00 00       	push   $0x205
57331b:	68 34 cb 6b 00       	push   $0x6bcb34
573320:	68 9a 00 00 00       	push   $0x9a
573325:	68 9f 00 00 00       	push   $0x9f
57332a:	6a 04                	push   $0x4
57332c:	e8 6f e1 f2 ff       	call   0x4a14a0
573331:	83 c4 14             	add    $0x14,%esp
573334:	33 c0                	xor    %eax,%eax
573336:	c3                   	ret
573337:	ff 30                	push   (%eax)
573339:	e8 a2 46 f3 ff       	call   0x4a79e0
57333e:	50                   	push   %eax
57333f:	e8 0c 46 f3 ff       	call   0x4a7950
573344:	50                   	push   %eax
573345:	e8 86 9b f6 ff       	call   0x4dced0
57334a:	83 c4 0c             	add    $0xc,%esp
57334d:	85 c0                	test   %eax,%eax
57334f:	75 20                	jne    0x573371
573351:	68 0a 02 00 00       	push   $0x20a
573356:	68 34 cb 6b 00       	push   $0x6bcb34
57335b:	68 97 00 00 00       	push   $0x97
573360:	68 9f 00 00 00       	push   $0x9f
573365:	6a 04                	push   $0x4
573367:	e8 34 e1 f2 ff       	call   0x4a14a0
57336c:	83 c4 14             	add    $0x14,%esp
57336f:	33 c0                	xor    %eax,%eax
573371:	c3                   	ret
573372:	cc                   	int3
573373:	cc                   	int3
573374:	cc                   	int3
573375:	cc                   	int3
573376:	cc                   	int3
573377:	cc                   	int3
573378:	cc                   	int3
573379:	cc                   	int3
57337a:	cc                   	int3
57337b:	cc                   	int3
57337c:	cc                   	int3
57337d:	cc                   	int3
57337e:	cc                   	int3
57337f:	cc                   	int3
573380:	8b 44 24 04          	mov    0x4(%esp),%eax
573384:	56                   	push   %esi
573385:	8b 74 24 0c          	mov    0xc(%esp),%esi
573389:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
57338f:	8b 48 04             	mov    0x4(%eax),%ecx
573392:	85 c9                	test   %ecx,%ecx
573394:	74 3f                	je     0x5733d5
573396:	83 39 10             	cmpl   $0x10,(%ecx)
573399:	75 3a                	jne    0x5733d5
57339b:	8b 41 04             	mov    0x4(%ecx),%eax
57339e:	57                   	push   %edi
57339f:	8b 40 08             	mov    0x8(%eax),%eax
5733a2:	89 44 24 10          	mov    %eax,0x10(%esp)
5733a6:	8b 41 04             	mov    0x4(%ecx),%eax
5733a9:	ff 30                	push   (%eax)
5733ab:	8d 44 24 14          	lea    0x14(%esp),%eax
5733af:	50                   	push   %eax
5733b0:	6a 00                	push   $0x0
5733b2:	e8 29 46 01 00       	call   0x5879e0
5733b7:	8b f8                	mov    %eax,%edi
5733b9:	83 c4 0c             	add    $0xc,%esp
5733bc:	85 ff                	test   %edi,%edi
5733be:	75 03                	jne    0x5733c3
5733c0:	5f                   	pop    %edi
5733c1:	5e                   	pop    %esi
5733c2:	c3                   	ret
5733c3:	ff 77 04             	push   0x4(%edi)
5733c6:	e8 b5 fe ff ff       	call   0x573280
5733cb:	83 c4 04             	add    $0x4,%esp
5733ce:	89 06                	mov    %eax,(%esi)
5733d0:	8b c7                	mov    %edi,%eax
5733d2:	5f                   	pop    %edi
5733d3:	5e                   	pop    %esi
5733d4:	c3                   	ret
5733d5:	33 c0                	xor    %eax,%eax
5733d7:	5e                   	pop    %esi
5733d8:	c3                   	ret
5733d9:	cc                   	int3
5733da:	cc                   	int3
5733db:	cc                   	int3
5733dc:	cc                   	int3
5733dd:	cc                   	int3
5733de:	cc                   	int3
5733df:	cc                   	int3
5733e0:	8b 44 24 04          	mov    0x4(%esp),%eax
5733e4:	56                   	push   %esi
5733e5:	8b 74 24 0c          	mov    0xc(%esp),%esi
5733e9:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
5733ef:	8b 48 04             	mov    0x4(%eax),%ecx
5733f2:	85 c9                	test   %ecx,%ecx
5733f4:	74 3f                	je     0x573435
5733f6:	83 39 10             	cmpl   $0x10,(%ecx)
5733f9:	75 3a                	jne    0x573435
5733fb:	8b 41 04             	mov    0x4(%ecx),%eax
5733fe:	57                   	push   %edi
5733ff:	8b 40 08             	mov    0x8(%eax),%eax
573402:	89 44 24 10          	mov    %eax,0x10(%esp)
573406:	8b 41 04             	mov    0x4(%ecx),%eax
573409:	ff 30                	push   (%eax)
57340b:	8d 44 24 14          	lea    0x14(%esp),%eax
57340f:	50                   	push   %eax
573410:	6a 00                	push   $0x0
573412:	e8 e9 45 01 00       	call   0x587a00
573417:	8b f8                	mov    %eax,%edi
573419:	83 c4 0c             	add    $0xc,%esp
57341c:	85 ff                	test   %edi,%edi
57341e:	75 03                	jne    0x573423
573420:	5f                   	pop    %edi
573421:	5e                   	pop    %esi
573422:	c3                   	ret
573423:	ff 77 04             	push   0x4(%edi)
573426:	e8 55 fe ff ff       	call   0x573280
57342b:	83 c4 04             	add    $0x4,%esp
57342e:	89 06                	mov    %eax,(%esi)
573430:	8b c7                	mov    %edi,%eax
573432:	5f                   	pop    %edi
573433:	5e                   	pop    %esi
573434:	c3                   	ret
573435:	33 c0                	xor    %eax,%eax
573437:	5e                   	pop    %esi
573438:	c3                   	ret
573439:	cc                   	int3
57343a:	cc                   	int3
57343b:	cc                   	int3
57343c:	cc                   	int3
57343d:	cc                   	int3
57343e:	cc                   	int3
57343f:	cc                   	int3
573440:	55                   	push   %ebp
573441:	57                   	push   %edi
573442:	8b 7c 24 10          	mov    0x10(%esp),%edi
573446:	33 ed                	xor    %ebp,%ebp
573448:	85 ff                	test   %edi,%edi
57344a:	75 1d                	jne    0x573469
57344c:	68 00 cc 6b 00       	push   $0x6bcc00
573451:	ff 74 24 10          	push   0x10(%esp)
573455:	e8 b6 f4 f3 ff       	call   0x4b2910
57345a:	83 c4 08             	add    $0x8,%esp
57345d:	33 c9                	xor    %ecx,%ecx
57345f:	85 c0                	test   %eax,%eax
573461:	0f 9f c1             	setg   %cl
573464:	5f                   	pop    %edi
573465:	8b c1                	mov    %ecx,%eax
573467:	5d                   	pop    %ebp
573468:	c3                   	ret
573469:	56                   	push   %esi
57346a:	8b 74 24 10          	mov    0x10(%esp),%esi
57346e:	68 b8 82 6b 00       	push   $0x6b82b8
573473:	56                   	push   %esi
573474:	e8 97 f4 f3 ff       	call   0x4b2910
573479:	83 c4 08             	add    $0x8,%esp
57347c:	85 c0                	test   %eax,%eax
57347e:	0f 8e ba 01 00 00    	jle    0x57363e
573484:	53                   	push   %ebx
573485:	8b 5c 24 20          	mov    0x20(%esp),%ebx
573489:	68 80 00 00 00       	push   $0x80
57348e:	53                   	push   %ebx
57348f:	56                   	push   %esi
573490:	e8 ab f2 f3 ff       	call   0x4b2740
573495:	83 c4 0c             	add    $0xc,%esp
573498:	85 c0                	test   %eax,%eax
57349a:	0f 84 9d 01 00 00    	je     0x57363d
5734a0:	68 1c cc 6b 00       	push   $0x6bcc1c
5734a5:	56                   	push   %esi
5734a6:	e8 65 f4 f3 ff       	call   0x4b2910
5734ab:	83 c4 08             	add    $0x8,%esp
5734ae:	85 c0                	test   %eax,%eax
5734b0:	0f 8e 87 01 00 00    	jle    0x57363d
5734b6:	8b 07                	mov    (%edi),%eax
5734b8:	85 c0                	test   %eax,%eax
5734ba:	74 0a                	je     0x5734c6
5734bc:	ff 30                	push   (%eax)
5734be:	56                   	push   %esi
5734bf:	e8 cc 3f f3 ff       	call   0x4a7490
5734c4:	eb 0b                	jmp    0x5734d1
5734c6:	68 30 cc 6b 00       	push   $0x6bcc30
5734cb:	56                   	push   %esi
5734cc:	e8 3f f4 f3 ff       	call   0x4b2910
5734d1:	83 c4 08             	add    $0x8,%esp
5734d4:	85 c0                	test   %eax,%eax
5734d6:	0f 8e 61 01 00 00    	jle    0x57363d
5734dc:	68 b8 82 6b 00       	push   $0x6b82b8
5734e1:	56                   	push   %esi
5734e2:	e8 29 f4 f3 ff       	call   0x4b2910
5734e7:	83 c4 08             	add    $0x8,%esp
5734ea:	85 c0                	test   %eax,%eax
5734ec:	0f 8e 4b 01 00 00    	jle    0x57363d
5734f2:	68 80 00 00 00       	push   $0x80
5734f7:	53                   	push   %ebx
5734f8:	56                   	push   %esi
5734f9:	e8 42 f2 f3 ff       	call   0x4b2740
5734fe:	83 c4 0c             	add    $0xc,%esp