4550de:	68 70 61 45 00       	push   $0x456170
4550e3:	8b f0                	mov    %eax,%esi
4550e5:	e8 96 11 00 00       	call   0x456280
4550ea:	2b f0                	sub    %eax,%esi
4550ec:	0f 80 6b 02 00 00    	jo     0x45535d
4550f2:	33 c0                	xor    %eax,%eax
4550f4:	89 75 cc             	mov    %esi,-0x34(%ebp)
4550f7:	89 45 c8             	mov    %eax,-0x38(%ebp)
4550fa:	b9 02 00 00 00       	mov    $0x2,%ecx
4550ff:	3b c1                	cmp    %ecx,%eax
455101:	0f 8f 05 01 00 00    	jg     0x45520c
455107:	2b c3                	sub    %ebx,%eax
455109:	74 26                	je     0x455131
45510b:	48                   	dec    %eax
45510c:	74 13                	je     0x455121
45510e:	48                   	dec    %eax
45510f:	75 2e                	jne    0x45513f
455111:	c7 45 d8 90 01 00 00 	movl   $0x190,-0x28(%ebp)
455118:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
45511f:	eb 1e                	jmp    0x45513f
455121:	c7 45 d8 5e 01 00 00 	movl   $0x15e,-0x28(%ebp)
455128:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
45512f:	eb 0e                	jmp    0x45513f
455131:	c7 45 d8 2c 01 00 00 	movl   $0x12c,-0x28(%ebp)
455138:	c7 45 dc 0d 00 00 00 	movl   $0xd,-0x24(%ebp)
45513f:	8b 45 d8             	mov    -0x28(%ebp),%eax
455142:	50                   	push   %eax
455143:	e8 a8 11 00 00       	call   0x4562f0
455148:	8b f0                	mov    %eax,%esi
45514a:	3b f3                	cmp    %ebx,%esi
45514c:	0f 84 bb 01 00 00    	je     0x45530d
455152:	56                   	push   %esi
455153:	ff 15 5c 10 40 00    	call   *0x40105c
455159:	3b c3                	cmp    %ebx,%eax
45515b:	89 45 d0             	mov    %eax,-0x30(%ebp)
45515e:	0f 84 a9 01 00 00    	je     0x45530d
455164:	56                   	push   %esi
455165:	ff 15 20 10 40 00    	call   *0x401020
45516b:	39 5d dc             	cmp    %ebx,-0x24(%ebp)
45516e:	0f 84 80 00 00 00    	je     0x4551f4
455174:	8b 45 d8             	mov    -0x28(%ebp),%eax
455177:	83 c0 01             	add    $0x1,%eax
45517a:	0f 80 dd 01 00 00    	jo     0x45535d
455180:	50                   	push   %eax
455181:	89 45 d8             	mov    %eax,-0x28(%ebp)
455184:	e8 67 11 00 00       	call   0x4562f0
455189:	3b c3                	cmp    %ebx,%eax
45518b:	89 45 e8             	mov    %eax,-0x18(%ebp)
45518e:	0f 84 79 01 00 00    	je     0x45530d
455194:	50                   	push   %eax
455195:	e8 d6 01 00 00       	call   0x455370
45519a:	8b f0                	mov    %eax,%esi
45519c:	3b f3                	cmp    %ebx,%esi
45519e:	0f 84 69 01 00 00    	je     0x45530d
4551a4:	8b 4d d0             	mov    -0x30(%ebp),%ecx
4551a7:	56                   	push   %esi
4551a8:	51                   	push   %ecx
4551a9:	ff 15 34 10 40 00    	call   *0x401034
4551af:	8b 55 e8             	mov    -0x18(%ebp),%edx
4551b2:	8b d8                	mov    %eax,%ebx
4551b4:	52                   	push   %edx
4551b5:	ff 15 20 10 40 00    	call   *0x401020
4551bb:	56                   	push   %esi
4551bc:	ff 15 20 10 40 00    	call   *0x401020
4551c2:	85 db                	test   %ebx,%ebx
4551c4:	0f 84 43 01 00 00    	je     0x45530d
4551ca:	53                   	push   %ebx
4551cb:	57                   	push   %edi
4551cc:	e8 2f f8 ff ff       	call   0x454a00
4551d1:	8b 45 cc             	mov    -0x34(%ebp),%eax
4551d4:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4551d7:	03 c7                	add    %edi,%eax
4551d9:	0f 80 7e 01 00 00    	jo     0x45535d
4551df:	83 e9 01             	sub    $0x1,%ecx
4551e2:	8b f8                	mov    %eax,%edi
4551e4:	0f 80 73 01 00 00    	jo     0x45535d
4551ea:	89 4d dc             	mov    %ecx,-0x24(%ebp)
4551ed:	33 db                	xor    %ebx,%ebx
4551ef:	e9 77 ff ff ff       	jmp    0x45516b
4551f4:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4551f7:	b8 01 00 00 00       	mov    $0x1,%eax
4551fc:	03 c1                	add    %ecx,%eax
4551fe:	0f 80 59 01 00 00    	jo     0x45535d
455204:	89 45 c8             	mov    %eax,-0x38(%ebp)
455207:	e9 ee fe ff ff       	jmp    0x4550fa
45520c:	68 60 61 45 00       	push   $0x456160
455211:	e8 6a 10 00 00       	call   0x456280
455216:	68 70 54 45 00       	push   $0x455470
45521b:	8b f0                	mov    %eax,%esi
45521d:	e8 5e 10 00 00       	call   0x456280
455222:	8b 4d 08             	mov    0x8(%ebp),%ecx
455225:	8b 1d 44 10 40 00    	mov    0x401044,%ebx
45522b:	2b f0                	sub    %eax,%esi
45522d:	8d 95 50 ff ff ff    	lea    -0xb0(%ebp),%edx
455233:	0f 80 24 01 00 00    	jo     0x45535d
455239:	03 f1                	add    %ecx,%esi
45523b:	6a 04                	push   $0x4
45523d:	0f 80 1a 01 00 00    	jo     0x45535d
455243:	52                   	push   %edx
455244:	56                   	push   %esi
455245:	c7 85 50 ff ff ff 58 	movl   $0xff505958,-0xb0(%ebp)
45524c:	59 50 ff
45524f:	ff d3                	call   *%ebx
455251:	8b 3d 5c 11 40 00    	mov    0x40115c,%edi
455257:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45525a:	6a 26                	push   $0x26
45525c:	50                   	push   %eax
45525d:	ff d7                	call   *%edi
45525f:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
455262:	6a 48                	push   $0x48
455264:	51                   	push   %ecx
455265:	ff d7                	call   *%edi
455267:	8d 55 84             	lea    -0x7c(%ebp),%edx
45526a:	6a 45                	push   $0x45
45526c:	52                   	push   %edx
45526d:	ff d7                	call   *%edi
45526f:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
455275:	6a 31                	push   $0x31
455277:	50                   	push   %eax
455278:	ff d7                	call   *%edi
45527a:	8b 3d b8 11 40 00    	mov    0x4011b8,%edi
455280:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
455283:	8d 55 a4             	lea    -0x5c(%ebp),%edx
455286:	51                   	push   %ecx
455287:	8d 45 94             	lea    -0x6c(%ebp),%eax
45528a:	52                   	push   %edx
45528b:	50                   	push   %eax
45528c:	ff d7                	call   *%edi
45528e:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
455291:	50                   	push   %eax
455292:	8d 95 74 ff ff ff    	lea    -0x8c(%ebp),%edx
455298:	51                   	push   %ecx
455299:	52                   	push   %edx
45529a:	ff d7                	call   *%edi
45529c:	50                   	push   %eax
45529d:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
4552a3:	8d 8d 54 ff ff ff    	lea    -0xac(%ebp),%ecx
4552a9:	50                   	push   %eax
4552aa:	51                   	push   %ecx
4552ab:	ff d7                	call   *%edi
4552ad:	50                   	push   %eax
4552ae:	ff 15 f8 11 40 00    	call   *0x4011f8
4552b4:	8d 95 50 ff ff ff    	lea    -0xb0(%ebp),%edx
4552ba:	83 c6 04             	add    $0x4,%esi
4552bd:	6a 01                	push   $0x1
4552bf:	52                   	push   %edx
4552c0:	0f 80 97 00 00 00    	jo     0x45535d
4552c6:	56                   	push   %esi
4552c7:	89 85 50 ff ff ff    	mov    %eax,-0xb0(%ebp)
4552cd:	ff d3                	call   *%ebx
4552cf:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
4552d5:	8d 8d 54 ff ff ff    	lea    -0xac(%ebp),%ecx
4552db:	50                   	push   %eax
4552dc:	8d 95 64 ff ff ff    	lea    -0x9c(%ebp),%edx
4552e2:	51                   	push   %ecx
4552e3:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
4552e9:	52                   	push   %edx
4552ea:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
4552ed:	50                   	push   %eax
4552ee:	8d 55 94             	lea    -0x6c(%ebp),%edx
4552f1:	51                   	push   %ecx
4552f2:	8d 45 a4             	lea    -0x5c(%ebp),%eax
4552f5:	52                   	push   %edx
4552f6:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
4552f9:	50                   	push   %eax
4552fa:	51                   	push   %ecx
4552fb:	6a 08                	push   $0x8
4552fd:	ff 15 a0 10 40 00    	call   *0x4010a0
455303:	83 c4 24             	add    $0x24,%esp
455306:	c7 45 e4 ff ff ff ff 	movl   $0xffffffff,-0x1c(%ebp)
45530d:	68 46 53 45 00       	push   $0x455346
455312:	eb 31                	jmp    0x455345
455314:	8d 95 54 ff ff ff    	lea    -0xac(%ebp),%edx
45531a:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
455320:	52                   	push   %edx
455321:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
455327:	50                   	push   %eax
455328:	8d 55 84             	lea    -0x7c(%ebp),%edx
45532b:	51                   	push   %ecx
45532c:	8d 45 94             	lea    -0x6c(%ebp),%eax
45532f:	52                   	push   %edx
455330:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
455333:	50                   	push   %eax
455334:	8d 55 b4             	lea    -0x4c(%ebp),%edx
455337:	51                   	push   %ecx
455338:	52                   	push   %edx
455339:	6a 07                	push   $0x7
45533b:	ff 15 a0 10 40 00    	call   *0x4010a0
455341:	83 c4 20             	add    $0x20,%esp
455344:	c3                   	ret
455345:	c3                   	ret
455346:	8b 4d f0             	mov    -0x10(%ebp),%ecx
455349:	66 8b 45 e4          	mov    -0x1c(%ebp),%ax
45534d:	5f                   	pop    %edi
45534e:	5e                   	pop    %esi
45534f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
455356:	5b                   	pop    %ebx
455357:	8b e5                	mov    %ebp,%esp
455359:	5d                   	pop    %ebp
45535a:	c2 04 00             	ret    $0x4
45535d:	ff 15 7c 11 40 00    	call   *0x40117c
455363:	90                   	nop
455364:	90                   	nop
455365:	90                   	nop
455366:	90                   	nop
455367:	90                   	nop
455368:	90                   	nop
455369:	90                   	nop
45536a:	90                   	nop
45536b:	90                   	nop
45536c:	90                   	nop
45536d:	90                   	nop
45536e:	90                   	nop
45536f:	90                   	nop
455370:	51                   	push   %ecx
455371:	53                   	push   %ebx
455372:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
455376:	56                   	push   %esi
455377:	57                   	push   %edi
455378:	53                   	push   %ebx
455379:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
455380:	00
455381:	ff 15 2c 10 40 00    	call   *0x40102c
455387:	8b f0                	mov    %eax,%esi
455389:	56                   	push   %esi
45538a:	6a 00                	push   $0x0
45538c:	ff 15 28 10 40 00    	call   *0x401028
455392:	8b f8                	mov    %eax,%edi
455394:	8d 44 24 0c          	lea    0xc(%esp),%eax
455398:	50                   	push   %eax
455399:	6a 00                	push   $0x0
45539b:	56                   	push   %esi
45539c:	57                   	push   %edi
45539d:	56                   	push   %esi
45539e:	53                   	push   %ebx
45539f:	6a 00                	push   $0x0
4553a1:	6a 00                	push   $0x0
4553a3:	c7 44 24 2c 00 00 00 	movl   $0x0,0x2c(%esp)
4553aa:	00
4553ab:	ff 15 48 10 40 00    	call   *0x401048
4553b1:	8b c7                	mov    %edi,%eax
4553b3:	5f                   	pop    %edi
4553b4:	5e                   	pop    %esi
4553b5:	5b                   	pop    %ebx
4553b6:	59                   	pop    %ecx
4553b7:	c2 04 00             	ret    $0x4
4553ba:	90                   	nop
4553bb:	90                   	nop
4553bc:	90                   	nop
4553bd:	90                   	nop
4553be:	90                   	nop
4553bf:	90                   	nop
4553c0:	55                   	push   %ebp
4553c1:	8b ec                	mov    %esp,%ebp
4553c3:	83 ec 08             	sub    $0x8,%esp
4553c6:	68 d6 15 40 00       	push   $0x4015d6
4553cb:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4553d1:	50                   	push   %eax
4553d2:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
4553d9:	83 ec 38             	sub    $0x38,%esp
4553dc:	53                   	push   %ebx
4553dd:	56                   	push   %esi
4553de:	57                   	push   %edi
4553df:	89 65 f8             	mov    %esp,-0x8(%ebp)
4553e2:	c7 45 fc c0 15 40 00 	movl   $0x4015c0,-0x4(%ebp)
4553e9:	33 c0                	xor    %eax,%eax
4553eb:	6a 31                	push   $0x31
4553ed:	89 45 dc             	mov    %eax,-0x24(%ebp)
4553f0:	89 45 cc             	mov    %eax,-0x34(%ebp)
4553f3:	89 45 c4             	mov    %eax,-0x3c(%ebp)
4553f6:	8d 45 dc             	lea    -0x24(%ebp),%eax
4553f9:	50                   	push   %eax
4553fa:	c7 45 bc 02 00 00 00 	movl   $0x2,-0x44(%ebp)
455401:	ff 15 5c 11 40 00    	call   *0x40115c
455407:	8d 4d bc             	lea    -0x44(%ebp),%ecx
45540a:	8d 55 dc             	lea    -0x24(%ebp),%edx
45540d:	51                   	push   %ecx
45540e:	8d 45 cc             	lea    -0x34(%ebp),%eax
455411:	52                   	push   %edx
455412:	50                   	push   %eax
455413:	ff 15 b8 11 40 00    	call   *0x4011b8
455419:	50                   	push   %eax
45541a:	ff 15 f0 10 40 00    	call   *0x4010f0
455420:	8d 4d cc             	lea    -0x34(%ebp),%ecx
455423:	8d 55 dc             	lea    -0x24(%ebp),%edx
455426:	51                   	push   %ecx
455427:	52                   	push   %edx
455428:	6a 02                	push   $0x2
45542a:	89 45 ec             	mov    %eax,-0x14(%ebp)
45542d:	ff 15 a0 10 40 00    	call   *0x4010a0
455433:	83 c4 0c             	add    $0xc,%esp
455436:	68 52 54 45 00       	push   $0x455452
45543b:	eb 14                	jmp    0x455451
45543d:	8d 45 cc             	lea    -0x34(%ebp),%eax
455440:	8d 4d dc             	lea    -0x24(%ebp),%ecx
455443:	50                   	push   %eax
455444:	51                   	push   %ecx
455445:	6a 02                	push   $0x2
455447:	ff 15 a0 10 40 00    	call   *0x4010a0
45544d:	83 c4 0c             	add    $0xc,%esp
455450:	c3                   	ret
455451:	c3                   	ret
455452:	8b 4d f0             	mov    -0x10(%ebp),%ecx
455455:	66 8b 45 ec          	mov    -0x14(%ebp),%ax
455459:	5f                   	pop    %edi
45545a:	5e                   	pop    %esi
45545b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
455462:	5b                   	pop    %ebx
455463:	8b e5                	mov    %ebp,%esp
455465:	5d                   	pop    %ebp
455466:	c2 04 00             	ret    $0x4
455469:	90                   	nop
45546a:	90                   	nop
45546b:	90                   	nop
45546c:	90                   	nop
45546d:	90                   	nop
45546e:	90                   	nop
45546f:	90                   	nop
455470:	66 33 c0             	xor    %ax,%ax
455473:	c3                   	ret
455474:	90                   	nop
455475:	90                   	nop
455476:	90                   	nop
455477:	90                   	nop
455478:	90                   	nop
455479:	90                   	nop
45547a:	90                   	nop
45547b:	90                   	nop
45547c:	90                   	nop
45547d:	90                   	nop
45547e:	90                   	nop
45547f:	90                   	nop
455480:	81 ec fc 00 00 00    	sub    $0xfc,%esp
455486:	56                   	push   %esi
455487:	8b b4 24 04 01 00 00 	mov    0x104(%esp),%esi
45548e:	57                   	push   %edi
45548f:	b9 3e 00 00 00       	mov    $0x3e,%ecx
455494:	33 c0                	xor    %eax,%eax
455496:	8d 7c 24 0c          	lea    0xc(%esp),%edi
45549a:	f3 ab                	rep stos %eax,%es:(%edi)
45549c:	89 44 24 08          	mov    %eax,0x8(%esp)
4554a0:	8d 44 24 0c          	lea    0xc(%esp),%eax
4554a4:	50                   	push   %eax
4554a5:	56                   	push   %esi
4554a6:	e8 c5 0a 00 00       	call   0x455f70
4554ab:	85 c0                	test   %eax,%eax
4554ad:	75 1d                	jne    0x4554cc
4554af:	8b 8c 24 10 01 00 00 	mov    0x110(%esp),%ecx
4554b6:	6a 01                	push   $0x1
4554b8:	51                   	push   %ecx