455018:	ff 56 34             	call   *0x34(%esi)
45501b:	5e                   	pop    %esi
45501c:	5d                   	pop    %ebp
45501d:	c2 14 00             	ret    $0x14
455020:	8b ff                	mov    %edi,%edi
455022:	55                   	push   %ebp
455023:	8b ec                	mov    %esp,%ebp
455025:	8b 45 08             	mov    0x8(%ebp),%eax
455028:	8b 40 2c             	mov    0x2c(%eax),%eax
45502b:	85 c0                	test   %eax,%eax
45502d:	74 1d                	je     0x45504c
45502f:	56                   	push   %esi
455030:	ff 75 18             	push   0x18(%ebp)
455033:	8b 30                	mov    (%eax),%esi
455035:	ff 75 14             	push   0x14(%ebp)
455038:	ff 75 10             	push   0x10(%ebp)
45503b:	8b 4e 28             	mov    0x28(%esi),%ecx
45503e:	ff 75 0c             	push   0xc(%ebp)
455041:	50                   	push   %eax
455042:	ff 15 2c 81 4a 00    	call   *0x4a812c
455048:	ff 56 28             	call   *0x28(%esi)
45504b:	5e                   	pop    %esi
45504c:	5d                   	pop    %ebp
45504d:	c2 14 00             	ret    $0x14
455050:	8b ff                	mov    %edi,%edi
455052:	55                   	push   %ebp
455053:	8b ec                	mov    %esp,%ebp
455055:	8b 45 08             	mov    0x8(%ebp),%eax
455058:	8b 40 2c             	mov    0x2c(%eax),%eax
45505b:	85 c0                	test   %eax,%eax
45505d:	74 1d                	je     0x45507c
45505f:	56                   	push   %esi
455060:	ff 75 18             	push   0x18(%ebp)
455063:	8b 30                	mov    (%eax),%esi
455065:	ff 75 14             	push   0x14(%ebp)
455068:	ff 75 10             	push   0x10(%ebp)
45506b:	8b 4e 24             	mov    0x24(%esi),%ecx
45506e:	ff 75 0c             	push   0xc(%ebp)
455071:	50                   	push   %eax
455072:	ff 15 2c 81 4a 00    	call   *0x4a812c
455078:	ff 56 24             	call   *0x24(%esi)
45507b:	5e                   	pop    %esi
45507c:	5d                   	pop    %ebp
45507d:	c2 14 00             	ret    $0x14
455080:	8b ff                	mov    %edi,%edi
455082:	55                   	push   %ebp
455083:	8b ec                	mov    %esp,%ebp
455085:	8b 45 08             	mov    0x8(%ebp),%eax
455088:	8b 40 2c             	mov    0x2c(%eax),%eax
45508b:	85 c0                	test   %eax,%eax
45508d:	74 1a                	je     0x4550a9
45508f:	56                   	push   %esi
455090:	ff 75 14             	push   0x14(%ebp)
455093:	8b 30                	mov    (%eax),%esi
455095:	ff 75 10             	push   0x10(%ebp)
455098:	ff 75 0c             	push   0xc(%ebp)
45509b:	8b 4e 10             	mov    0x10(%esi),%ecx
45509e:	50                   	push   %eax
45509f:	ff 15 2c 81 4a 00    	call   *0x4a812c
4550a5:	ff 56 10             	call   *0x10(%esi)
4550a8:	5e                   	pop    %esi
4550a9:	5d                   	pop    %ebp
4550aa:	c2 10 00             	ret    $0x10
4550ad:	cc                   	int3
4550ae:	cc                   	int3
4550af:	cc                   	int3
4550b0:	8b ff                	mov    %edi,%edi
4550b2:	55                   	push   %ebp
4550b3:	8b ec                	mov    %esp,%ebp
4550b5:	8b 45 08             	mov    0x8(%ebp),%eax
4550b8:	8b 40 2c             	mov    0x2c(%eax),%eax
4550bb:	85 c0                	test   %eax,%eax
4550bd:	74 1a                	je     0x4550d9
4550bf:	56                   	push   %esi
4550c0:	ff 75 14             	push   0x14(%ebp)
4550c3:	8b 30                	mov    (%eax),%esi
4550c5:	ff 75 10             	push   0x10(%ebp)
4550c8:	ff 75 0c             	push   0xc(%ebp)
4550cb:	8b 4e 0c             	mov    0xc(%esi),%ecx
4550ce:	50                   	push   %eax
4550cf:	ff 15 2c 81 4a 00    	call   *0x4a812c
4550d5:	ff 56 0c             	call   *0xc(%esi)
4550d8:	5e                   	pop    %esi
4550d9:	5d                   	pop    %ebp
4550da:	c2 10 00             	ret    $0x10
4550dd:	cc                   	int3
4550de:	cc                   	int3
4550df:	cc                   	int3
4550e0:	8b ff                	mov    %edi,%edi
4550e2:	55                   	push   %ebp
4550e3:	8b ec                	mov    %esp,%ebp
4550e5:	8b 4d 14             	mov    0x14(%ebp),%ecx
4550e8:	ba 02 40 00 80       	mov    $0x80004002,%edx
4550ed:	8b 45 08             	mov    0x8(%ebp),%eax
4550f0:	8b 0c 08             	mov    (%eax,%ecx,1),%ecx
4550f3:	85 c9                	test   %ecx,%ecx
4550f5:	74 19                	je     0x455110
4550f7:	8b 01                	mov    (%ecx),%eax
4550f9:	56                   	push   %esi
4550fa:	ff 75 10             	push   0x10(%ebp)
4550fd:	ff 75 0c             	push   0xc(%ebp)
455100:	8b 30                	mov    (%eax),%esi
455102:	51                   	push   %ecx
455103:	8b ce                	mov    %esi,%ecx
455105:	ff 15 2c 81 4a 00    	call   *0x4a812c
45510b:	ff d6                	call   *%esi
45510d:	8b d0                	mov    %eax,%edx
45510f:	5e                   	pop    %esi
455110:	8b c2                	mov    %edx,%eax
455112:	5d                   	pop    %ebp
455113:	c2 10 00             	ret    $0x10
455116:	8b ff                	mov    %edi,%edi
455118:	56                   	push   %esi
455119:	8b f1                	mov    %ecx,%esi
45511b:	ff 36                	push   (%esi)
45511d:	ff 15 8c 7f 4a 00    	call   *0x4a7f8c
455123:	83 26 00             	andl   $0x0,(%esi)
455126:	5e                   	pop    %esi
455127:	c3                   	ret
455128:	8b ff                	mov    %edi,%edi
45512a:	55                   	push   %ebp
45512b:	8b ec                	mov    %esp,%ebp
45512d:	83 ec 24             	sub    $0x24,%esp
455130:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
455135:	33 c5                	xor    %ebp,%eax
455137:	89 45 fc             	mov    %eax,-0x4(%ebp)
45513a:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
45513e:	8d 45 08             	lea    0x8(%ebp),%eax
455141:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
455145:	ba e8 f5 40 00       	mov    $0x40f5e8,%edx
45514a:	89 45 ec             	mov    %eax,-0x14(%ebp)
45514d:	8d 45 dc             	lea    -0x24(%ebp),%eax
455150:	50                   	push   %eax
455151:	6a 02                	push   $0x2
455153:	51                   	push   %ecx
455154:	c7 45 f4 04 00 00 00 	movl   $0x4,-0xc(%ebp)
45515b:	e8 43 03 fd ff       	call   0x4254a3
455160:	8b 4d fc             	mov    -0x4(%ebp),%ecx
455163:	33 cd                	xor    %ebp,%ecx
455165:	e8 96 ad 03 00       	call   0x48ff00
45516a:	c9                   	leave
45516b:	c2 04 00             	ret    $0x4
45516e:	8b ff                	mov    %edi,%edi
455170:	55                   	push   %ebp
455171:	8b ec                	mov    %esp,%ebp
455173:	83 ec 0c             	sub    $0xc,%esp
455176:	53                   	push   %ebx
455177:	56                   	push   %esi
455178:	89 4d f4             	mov    %ecx,-0xc(%ebp)
45517b:	33 db                	xor    %ebx,%ebx
45517d:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
455180:	8b f1                	mov    %ecx,%esi
455182:	89 55 f8             	mov    %edx,-0x8(%ebp)
455185:	8a d3                	mov    %bl,%dl
455187:	57                   	push   %edi
455188:	88 55 ff             	mov    %dl,-0x1(%ebp)
45518b:	8d 7e 02             	lea    0x2(%esi),%edi
45518e:	66 8b 06             	mov    (%esi),%ax
455191:	83 c6 02             	add    $0x2,%esi
455194:	66 3b c3             	cmp    %bx,%ax
455197:	75 f5                	jne    0x45518e
455199:	2b f7                	sub    %edi,%esi
45519b:	8b fb                	mov    %ebx,%edi
45519d:	8b 1d 88 46 4a 00    	mov    0x4a4688,%ebx
4551a3:	d1 fe                	sar    $1,%esi
4551a5:	85 db                	test   %ebx,%ebx
4551a7:	74 1f                	je     0x4551c8
4551a9:	8d 45 ff             	lea    -0x1(%ebp),%eax
4551ac:	50                   	push   %eax
4551ad:	b8 00 08 00 00       	mov    $0x800,%eax
4551b2:	2b c6                	sub    %esi,%eax
4551b4:	50                   	push   %eax
4551b5:	8d 04 71             	lea    (%ecx,%esi,2),%eax
4551b8:	8b cb                	mov    %ebx,%ecx
4551ba:	50                   	push   %eax
4551bb:	ff 15 2c 81 4a 00    	call   *0x4a812c
4551c1:	ff d3                	call   *%ebx
4551c3:	8a 55 ff             	mov    -0x1(%ebp),%dl
4551c6:	8b f8                	mov    %eax,%edi
4551c8:	8b c7                	mov    %edi,%eax
4551ca:	c1 e8 1f             	shr    $0x1f,%eax
4551cd:	84 c0                	test   %al,%al
4551cf:	75 05                	jne    0x4551d6
4551d1:	bf 3e 02 07 80       	mov    $0x8007023e,%edi
4551d6:	33 c9                	xor    %ecx,%ecx
4551d8:	0f b6 c0             	movzbl %al,%eax
4551db:	41                   	inc    %ecx
4551dc:	33 c1                	xor    %ecx,%eax
4551de:	8d 04 45 01 00 00 00 	lea    0x1(,%eax,2),%eax
4551e5:	84 d2                	test   %dl,%dl
4551e7:	74 03                	je     0x4551ec
4551e9:	6a 05                	push   $0x5
4551eb:	59                   	pop    %ecx
4551ec:	8b 55 f8             	mov    -0x8(%ebp),%edx
4551ef:	51                   	push   %ecx
4551f0:	ff 75 1c             	push   0x1c(%ebp)
4551f3:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4551f6:	57                   	push   %edi
4551f7:	50                   	push   %eax
4551f8:	ff 75 14             	push   0x14(%ebp)
4551fb:	6a 00                	push   $0x0
4551fd:	6a 00                	push   $0x0
4551ff:	68 d8 03 41 00       	push   $0x4103d8
455204:	e8 ad 35 fc ff       	call   0x4187b6
455209:	8b c7                	mov    %edi,%eax
45520b:	5f                   	pop    %edi
45520c:	5e                   	pop    %esi
45520d:	5b                   	pop    %ebx
45520e:	c9                   	leave
45520f:	c2 20 00             	ret    $0x20
455212:	8b ff                	mov    %edi,%edi
455214:	55                   	push   %ebp
455215:	8b ec                	mov    %esp,%ebp
455217:	b8 04 10 00 00       	mov    $0x1004,%eax
45521c:	e8 cf bd 03 00       	call   0x490ff0
455221:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
455226:	33 c5                	xor    %ebp,%eax
455228:	89 45 fc             	mov    %eax,-0x4(%ebp)
45522b:	8b 45 14             	mov    0x14(%ebp),%eax
45522e:	56                   	push   %esi
45522f:	51                   	push   %ecx
455230:	33 f6                	xor    %esi,%esi
455232:	51                   	push   %ecx
455233:	66 89 b5 fc ef ff ff 	mov    %si,-0x1004(%ebp)
45523a:	8d b5 fc ef ff ff    	lea    -0x1004(%ebp),%esi
455240:	56                   	push   %esi
455241:	51                   	push   %ecx
455242:	50                   	push   %eax
455243:	83 ec 0c             	sub    $0xc,%esp
455246:	e8 23 ff ff ff       	call   0x45516e
45524b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45524e:	33 cd                	xor    %ebp,%ecx
455250:	5e                   	pop    %esi
455251:	e8 aa ac 03 00       	call   0x48ff00
455256:	c9                   	leave
455257:	c2 18 00             	ret    $0x18
45525a:	8b ff                	mov    %edi,%edi
45525c:	55                   	push   %ebp
45525d:	8b ec                	mov    %esp,%ebp
45525f:	51                   	push   %ecx
455260:	51                   	push   %ecx
455261:	ff 75 04             	push   0x4(%ebp)
455264:	83 ec 0c             	sub    $0xc,%esp
455267:	e8 a6 ff ff ff       	call   0x455212
45526c:	5d                   	pop    %ebp
45526d:	c2 04 00             	ret    $0x4
455270:	8b ff                	mov    %edi,%edi
455272:	55                   	push   %ebp
455273:	8b ec                	mov    %esp,%ebp
455275:	ff 75 0c             	push   0xc(%ebp)
455278:	33 c0                	xor    %eax,%eax
45527a:	ba 7d 05 00 00       	mov    $0x57d,%edx
45527f:	50                   	push   %eax
455280:	ff 75 04             	push   0x4(%ebp)
455283:	50                   	push   %eax
455284:	50                   	push   %eax
455285:	68 d8 03 41 00       	push   $0x4103d8
45528a:	e8 12 36 fc ff       	call   0x4188a1
45528f:	5d                   	pop    %ebp
455290:	c2 08 00             	ret    $0x8
455293:	8b ff                	mov    %edi,%edi
455295:	55                   	push   %ebp
455296:	8b ec                	mov    %esp,%ebp
455298:	6a ff                	push   $0xffffffff
45529a:	68 85 10 49 00       	push   $0x491085
45529f:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4552a5:	50                   	push   %eax
4552a6:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
4552ab:	33 c5                	xor    %ebp,%eax
4552ad:	50                   	push   %eax
4552ae:	8d 45 f4             	lea    -0xc(%ebp),%eax
4552b1:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4552b7:	83 39 00             	cmpl   $0x0,(%ecx)
4552ba:	74 08                	je     0x4552c4
4552bc:	ff 31                	push   (%ecx)
4552be:	ff 15 88 7e 4a 00    	call   *0x4a7e88
4552c4:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4552c7:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4552ce:	59                   	pop    %ecx
4552cf:	c9                   	leave
4552d0:	c3                   	ret
4552d1:	8b 0d 08 00 4a 00    	mov    0x4a0008,%ecx
4552d7:	8b c1                	mov    %ecx,%eax
4552d9:	8b 15 0c 00 4a 00    	mov    0x4a000c,%edx
4552df:	0b c2                	or     %edx,%eax
4552e1:	75 01                	jne    0x4552e4
4552e3:	c3                   	ret
4552e4:	52                   	push   %edx
4552e5:	51                   	push   %ecx
4552e6:	ff 15 20 70 4a 00    	call   *0x4a7020
4552ec:	83 25 08 00 4a 00 00 	andl   $0x0,0x4a0008
4552f3:	83 25 0c 00 4a 00 00 	andl   $0x0,0x4a000c
4552fa:	c3                   	ret
4552fb:	cc                   	int3
4552fc:	cc                   	int3
4552fd:	cc                   	int3
4552fe:	cc                   	int3
4552ff:	cc                   	int3
455300:	8b ff                	mov    %edi,%edi
455302:	55                   	push   %ebp
455303:	8b ec                	mov    %esp,%ebp
455305:	56                   	push   %esi
455306:	8b 75 28             	mov    0x28(%ebp),%esi
455309:	85 f6                	test   %esi,%esi
45530b:	0f 84 f8 00 00 00    	je     0x455409
455311:	8b 45 0c             	mov    0xc(%ebp),%eax
455314:	33 c9                	xor    %ecx,%ecx
455316:	2b c1                	sub    %ecx,%eax
455318:	0f 84 b2 00 00 00    	je     0x4553d0
45531e:	83 e8 01             	sub    $0x1,%eax
455321:	0f 85 e2 00 00 00    	jne    0x455409
455327:	8a 45 10             	mov    0x10(%ebp),%al
45532a:	8b d1                	mov    %ecx,%edx
45532c:	88 46 28             	mov    %al,0x28(%esi)
45532f:	8b 45 14             	mov    0x14(%ebp),%eax
455332:	89 46 10             	mov    %eax,0x10(%esi)
455335:	8b 45 18             	mov    0x18(%ebp),%eax
455338:	89 46 14             	mov    %eax,0x14(%esi)
45533b:	8b 45 1c             	mov    0x1c(%ebp),%eax
45533e:	89 46 18             	mov    %eax,0x18(%esi)
455341:	8b 45 20             	mov    0x20(%ebp),%eax
455344:	89 46 1c             	mov    %eax,0x1c(%esi)
455347:	33 c0                	xor    %eax,%eax
455349:	c7 46 24 01 00 00 00 	movl   $0x1,0x24(%esi)
455350:	66 3b 46 2a          	cmp    0x2a(%esi),%ax
455354:	0f 83 af 00 00 00    	jae    0x455409
45535a:	53                   	push   %ebx
45535b:	57                   	push   %edi
45535c:	8b 46 34             	mov    0x34(%esi),%eax
45535f:	8a 4e 28             	mov    0x28(%esi),%cl
455362:	38 0c 02             	cmp    %cl,(%edx,%eax,1)
455365:	76 04                	jbe    0x45536b
455367:	84 c9                	test   %cl,%cl
455369:	75 32                	jne    0x45539d
45536b:	8b 46 30             	mov    0x30(%esi),%eax
45536e:	8b 3c d0             	mov    (%eax,%edx,8),%edi
455371:	8b 5c d0 04          	mov    0x4(%eax,%edx,8),%ebx
455375:	8b c7                	mov    %edi,%eax
455377:	0b c3                	or     %ebx,%eax
455379:	74 26                	je     0x4553a1
45537b:	8b cf                	mov    %edi,%ecx
45537d:	8b c3                	mov    %ebx,%eax
45537f:	23 4e 10             	and    0x10(%esi),%ecx
455382:	23 46 14             	and    0x14(%esi),%eax
455385:	0b c8                	or     %eax,%ecx
455387:	74 14                	je     0x45539d
455389:	8b 46 18             	mov    0x18(%esi),%eax
45538c:	8b 4e 1c             	mov    0x1c(%esi),%ecx
45538f:	23 c7                	and    %edi,%eax
455391:	23 cb                	and    %ebx,%ecx