45916e:	74 16                	je     0x459186
459170:	2d ff af 00 00       	sub    $0xafff,%eax
459175:	75 7d                	jne    0x4591f4
459177:	8b 43 04             	mov    0x4(%ebx),%eax
45917a:	8a 50 57             	mov    0x57(%eax),%dl
45917d:	8b c6                	mov    %esi,%eax
45917f:	e8 68 be ff ff       	call   0x454fec
459184:	eb 6e                	jmp    0x4591f4
459186:	8b 43 04             	mov    0x4(%ebx),%eax
459189:	e8 de 2d fe ff       	call   0x43bf6c
45918e:	8b c8                	mov    %eax,%ecx
459190:	41                   	inc    %ecx
459191:	8d 45 fc             	lea    -0x4(%ebp),%eax
459194:	33 d2                	xor    %edx,%edx
459196:	e8 b9 b0 fa ff       	call   0x404254
45919b:	8b 45 fc             	mov    -0x4(%ebp),%eax
45919e:	e8 81 b2 fa ff       	call   0x404424
4591a3:	50                   	push   %eax
4591a4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4591a7:	e8 78 b4 fa ff       	call   0x404624
4591ac:	8b d0                	mov    %eax,%edx
4591ae:	8b 43 04             	mov    0x4(%ebx),%eax
4591b1:	59                   	pop    %ecx
4591b2:	e8 c5 2d fe ff       	call   0x43bf7c
4591b7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4591ba:	e8 65 b2 fa ff       	call   0x404424
4591bf:	85 c0                	test   %eax,%eax
4591c1:	7e 27                	jle    0x4591ea
4591c3:	bb 01 00 00 00       	mov    $0x1,%ebx
4591c8:	8b 55 fc             	mov    -0x4(%ebp),%edx
4591cb:	8a 54 1a ff          	mov    -0x1(%edx,%ebx,1),%dl
4591cf:	80 ea 0a             	sub    $0xa,%dl
4591d2:	74 05                	je     0x4591d9
4591d4:	80 ea 03             	sub    $0x3,%dl
4591d7:	75 0d                	jne    0x4591e6
4591d9:	8b d3                	mov    %ebx,%edx
4591db:	4a                   	dec    %edx
4591dc:	8d 45 fc             	lea    -0x4(%ebp),%eax
4591df:	e8 cc b5 fa ff       	call   0x4047b0
4591e4:	eb 04                	jmp    0x4591ea
4591e6:	43                   	inc    %ebx
4591e7:	48                   	dec    %eax
4591e8:	75 de                	jne    0x4591c8
4591ea:	8b 55 fc             	mov    -0x4(%ebp),%edx
4591ed:	8b c6                	mov    %esi,%eax
4591ef:	e8 34 2e fe ff       	call   0x43c028
4591f4:	33 c0                	xor    %eax,%eax
4591f6:	5a                   	pop    %edx
4591f7:	59                   	pop    %ecx
4591f8:	59                   	pop    %ecx
4591f9:	64 89 10             	mov    %edx,%fs:(%eax)
4591fc:	68 11 92 45 00       	push   $0x459211
459201:	8d 45 fc             	lea    -0x4(%ebp),%eax
459204:	e8 5b af fa ff       	call   0x404164
459209:	c3                   	ret
45920a:	e9 59 a9 fa ff       	jmp    0x403b68
45920f:	eb f0                	jmp    0x459201
459211:	5e                   	pop    %esi
459212:	5b                   	pop    %ebx
459213:	59                   	pop    %ecx
459214:	5d                   	pop    %ebp
459215:	c3                   	ret
459216:	8b c0                	mov    %eax,%eax
459218:	53                   	push   %ebx
459219:	8b da                	mov    %edx,%ebx
45921b:	8b d3                	mov    %ebx,%edx
45921d:	e8 c6 82 fe ff       	call   0x4414e8
459222:	8b 43 08             	mov    0x8(%ebx),%eax
459225:	33 d2                	xor    %edx,%edx
459227:	e8 f0 22 fe ff       	call   0x43b51c
45922c:	5b                   	pop    %ebx
45922d:	c3                   	ret
45922e:	8b c0                	mov    %eax,%eax
459230:	53                   	push   %ebx
459231:	56                   	push   %esi
459232:	57                   	push   %edi
459233:	8b d8                	mov    %eax,%ebx
459235:	8b c3                	mov    %ebx,%eax
459237:	e8 c0 89 fe ff       	call   0x441bfc
45923c:	f6 43 1c 08          	testb  $0x8,0x1c(%ebx)
459240:	75 26                	jne    0x459268
459242:	8b c3                	mov    %ebx,%eax
459244:	e8 bb 7f fe ff       	call   0x441204
459249:	8b f0                	mov    %eax,%esi
45924b:	4e                   	dec    %esi
45924c:	85 f6                	test   %esi,%esi
45924e:	7c 18                	jl     0x459268
459250:	46                   	inc    %esi
459251:	33 ff                	xor    %edi,%edi
459253:	8b d7                	mov    %edi,%edx
459255:	8b c3                	mov    %ebx,%eax
459257:	e8 bc 7f fe ff       	call   0x441218
45925c:	8a 53 57             	mov    0x57(%ebx),%dl
45925f:	e8 b4 2c fe ff       	call   0x43bf18
459264:	47                   	inc    %edi
459265:	4e                   	dec    %esi
459266:	75 eb                	jne    0x459253
459268:	5f                   	pop    %edi
459269:	5e                   	pop    %esi
45926a:	5b                   	pop    %ebx
45926b:	c3                   	ret
45926c:	53                   	push   %ebx
45926d:	83 c4 f0             	add    $0xfffffff0,%esp
459270:	8b d8                	mov    %eax,%ebx
459272:	8b d4                	mov    %esp,%edx
459274:	8b c3                	mov    %ebx,%eax
459276:	e8 59 00 00 00       	call   0x4592d4
45927b:	8b 04 24             	mov    (%esp),%eax
45927e:	83 c4 10             	add    $0x10,%esp
459281:	5b                   	pop    %ebx
459282:	c3                   	ret
459283:	90                   	nop
459284:	53                   	push   %ebx
459285:	83 c4 f0             	add    $0xfffffff0,%esp
459288:	8b d8                	mov    %eax,%ebx
45928a:	8b d4                	mov    %esp,%edx
45928c:	8b c3                	mov    %ebx,%eax
45928e:	e8 41 00 00 00       	call   0x4592d4
459293:	8b 44 24 0c          	mov    0xc(%esp),%eax
459297:	2b 44 24 04          	sub    0x4(%esp),%eax
45929b:	83 c4 10             	add    $0x10,%esp
45929e:	5b                   	pop    %ebx
45929f:	c3                   	ret
4592a0:	53                   	push   %ebx
4592a1:	83 c4 f0             	add    $0xfffffff0,%esp
4592a4:	8b d8                	mov    %eax,%ebx
4592a6:	8b d4                	mov    %esp,%edx
4592a8:	8b c3                	mov    %ebx,%eax
4592aa:	e8 25 00 00 00       	call   0x4592d4
4592af:	8b 44 24 04          	mov    0x4(%esp),%eax
4592b3:	83 c4 10             	add    $0x10,%esp
4592b6:	5b                   	pop    %ebx
4592b7:	c3                   	ret
4592b8:	53                   	push   %ebx
4592b9:	83 c4 f0             	add    $0xfffffff0,%esp
4592bc:	8b d8                	mov    %eax,%ebx
4592be:	8b d4                	mov    %esp,%edx
4592c0:	8b c3                	mov    %ebx,%eax
4592c2:	e8 0d 00 00 00       	call   0x4592d4
4592c7:	8b 44 24 08          	mov    0x8(%esp),%eax
4592cb:	2b 04 24             	sub    (%esp),%eax
4592ce:	83 c4 10             	add    $0x10,%esp
4592d1:	5b                   	pop    %ebx
4592d2:	c3                   	ret
4592d3:	90                   	nop
4592d4:	53                   	push   %ebx
4592d5:	56                   	push   %esi
4592d6:	57                   	push   %edi
4592d7:	83 c4 d8             	add    $0xffffffd8,%esp
4592da:	8b da                	mov    %edx,%ebx
4592dc:	c7 04 24 28 00 00 00 	movl   $0x28,(%esp)
4592e3:	54                   	push   %esp
4592e4:	8b 40 04             	mov    0x4(%eax),%eax
4592e7:	50                   	push   %eax
4592e8:	a1 c4 b0 49 00       	mov    0x49b0c4,%eax
4592ed:	8b 00                	mov    (%eax),%eax
4592ef:	ff d0                	call   *%eax
4592f1:	8b fb                	mov    %ebx,%edi
4592f3:	8d 74 24 04          	lea    0x4(%esp),%esi
4592f7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4592f8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4592f9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4592fa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4592fb:	83 c4 28             	add    $0x28,%esp
4592fe:	5f                   	pop    %edi
4592ff:	5e                   	pop    %esi
459300:	5b                   	pop    %ebx
459301:	c3                   	ret
459302:	8b c0                	mov    %eax,%eax
459304:	53                   	push   %ebx
459305:	56                   	push   %esi
459306:	57                   	push   %edi
459307:	83 c4 d8             	add    $0xffffffd8,%esp
45930a:	8b da                	mov    %edx,%ebx
45930c:	c7 04 24 28 00 00 00 	movl   $0x28,(%esp)
459313:	54                   	push   %esp
459314:	8b 40 04             	mov    0x4(%eax),%eax
459317:	50                   	push   %eax
459318:	a1 c4 b0 49 00       	mov    0x49b0c4,%eax
45931d:	8b 00                	mov    (%eax),%eax
45931f:	ff d0                	call   *%eax
459321:	8b fb                	mov    %ebx,%edi
459323:	8d 74 24 14          	lea    0x14(%esp),%esi
459327:	a5                   	movsl  %ds:(%esi),%es:(%edi)
459328:	a5                   	movsl  %ds:(%esi),%es:(%edi)
459329:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45932a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45932b:	83 c4 28             	add    $0x28,%esp
45932e:	5f                   	pop    %edi
45932f:	5e                   	pop    %esi
459330:	5b                   	pop    %ebx
459331:	c3                   	ret
459332:	8b c0                	mov    %eax,%eax
459334:	55                   	push   %ebp
459335:	8b ec                	mov    %esp,%ebp
459337:	51                   	push   %ecx
459338:	53                   	push   %ebx
459339:	56                   	push   %esi
45933a:	84 d2                	test   %dl,%dl
45933c:	74 08                	je     0x459346
45933e:	83 c4 f0             	add    $0xfffffff0,%esp
459341:	e8 f2 a3 fa ff       	call   0x403738
459346:	88 55 ff             	mov    %dl,-0x1(%ebp)
459349:	8b d8                	mov    %eax,%ebx
45934b:	33 d2                	xor    %edx,%edx
45934d:	8b c3                	mov    %ebx,%eax
45934f:	e8 ac af fc ff       	call   0x424300
459354:	a1 40 b0 49 00       	mov    0x49b040,%eax
459359:	89 58 04             	mov    %ebx,0x4(%eax)
45935c:	c7 00 d8 96 45 00    	movl   $0x4596d8,(%eax)
459362:	a1 50 b0 49 00       	mov    0x49b050,%eax
459367:	89 58 04             	mov    %ebx,0x4(%eax)
45936a:	c7 00 e4 96 45 00    	movl   $0x4596e4,(%eax)
459370:	8b c3                	mov    %ebx,%eax
459372:	e8 79 03 00 00       	call   0x4596f0
459377:	6a 00                	push   $0x0
459379:	e8 92 d9 fa ff       	call   0x406d10
45937e:	89 43 3c             	mov    %eax,0x3c(%ebx)
459381:	b2 01                	mov    $0x1,%dl
459383:	a1 bc 95 41 00       	mov    0x4195bc,%eax
459388:	e8 2f a0 fa ff       	call   0x4033bc
45938d:	89 43 4c             	mov    %eax,0x4c(%ebx)
459390:	b2 01                	mov    $0x1,%dl
459392:	a1 bc 95 41 00       	mov    0x4195bc,%eax
459397:	e8 20 a0 fa ff       	call   0x4033bc
45939c:	89 43 50             	mov    %eax,0x50(%ebx)
45939f:	b2 01                	mov    $0x1,%dl
4593a1:	a1 bc 95 41 00       	mov    0x4195bc,%eax
4593a6:	e8 11 a0 fa ff       	call   0x4033bc
4593ab:	89 43 54             	mov    %eax,0x54(%ebx)
4593ae:	b2 01                	mov    $0x1,%dl
4593b0:	a1 bc 95 41 00       	mov    0x4195bc,%eax
4593b5:	e8 02 a0 fa ff       	call   0x4033bc
4593ba:	89 43 58             	mov    %eax,0x58(%ebx)
4593bd:	b2 01                	mov    $0x1,%dl
4593bf:	a1 bc 95 41 00       	mov    0x4195bc,%eax
4593c4:	e8 f3 9f fa ff       	call   0x4033bc
4593c9:	89 43 7c             	mov    %eax,0x7c(%ebx)
4593cc:	6a 00                	push   $0x0
4593ce:	e8 f5 d8 fa ff       	call   0x406cc8
4593d3:	8b f0                	mov    %eax,%esi
4593d5:	6a 5a                	push   $0x5a
4593d7:	56                   	push   %esi
4593d8:	e8 63 d6 fa ff       	call   0x406a40
4593dd:	89 43 40             	mov    %eax,0x40(%ebx)
4593e0:	56                   	push   %esi
4593e1:	6a 00                	push   $0x0
4593e3:	e8 30 db fa ff       	call   0x406f18
4593e8:	8b 43 58             	mov    0x58(%ebx),%eax
4593eb:	50                   	push   %eax
4593ec:	b8 0c 5b 45 00       	mov    $0x455b0c,%eax
4593f1:	50                   	push   %eax
4593f2:	6a 00                	push   $0x0
4593f4:	6a 00                	push   $0x0
4593f6:	a1 54 b2 49 00       	mov    0x49b254,%eax
4593fb:	8b 00                	mov    (%eax),%eax
4593fd:	ff d0                	call   *%eax
4593ff:	b2 01                	mov    $0x1,%dl
459401:	a1 2c 5d 42 00       	mov    0x425d2c,%eax
459406:	e8 65 dd fc ff       	call   0x427170
45940b:	89 83 84 00 00 00    	mov    %eax,0x84(%ebx)
459411:	b2 01                	mov    $0x1,%dl
459413:	a1 2c 5d 42 00       	mov    0x425d2c,%eax
459418:	e8 53 dd fc ff       	call   0x427170
45941d:	89 83 88 00 00 00    	mov    %eax,0x88(%ebx)
459423:	b2 01                	mov    $0x1,%dl
459425:	a1 2c 5d 42 00       	mov    0x425d2c,%eax
45942a:	e8 41 dd fc ff       	call   0x427170
45942f:	89 83 80 00 00 00    	mov    %eax,0x80(%ebx)
459435:	8b c3                	mov    %ebx,%eax
459437:	e8 d4 06 00 00       	call   0x459b10
45943c:	8b 83 84 00 00 00    	mov    0x84(%ebx),%eax
459442:	89 58 0c             	mov    %ebx,0xc(%eax)
459445:	c7 40 08 ec 99 45 00 	movl   $0x4599ec,0x8(%eax)
45944c:	8b 83 88 00 00 00    	mov    0x88(%ebx),%eax
459452:	89 58 0c             	mov    %ebx,0xc(%eax)
459455:	c7 40 08 ec 99 45 00 	movl   $0x4599ec,0x8(%eax)
45945c:	8b 83 80 00 00 00    	mov    0x80(%ebx),%eax
459462:	89 58 0c             	mov    %ebx,0xc(%eax)
459465:	c7 40 08 ec 99 45 00 	movl   $0x4599ec,0x8(%eax)
45946c:	8b c3                	mov    %ebx,%eax
45946e:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
459472:	74 0f                	je     0x459483
459474:	e8 17 a3 fa ff       	call   0x403790
459479:	64 8f 05 00 00 00 00 	pop    %fs:0x0
459480:	83 c4 0c             	add    $0xc,%esp
459483:	8b c3                	mov    %ebx,%eax
459485:	5e                   	pop    %esi
459486:	5b                   	pop    %ebx
459487:	59                   	pop    %ecx
459488:	5d                   	pop    %ebp
459489:	c3                   	ret
45948a:	8b c0                	mov    %eax,%eax
45948c:	53                   	push   %ebx
45948d:	56                   	push   %esi
45948e:	57                   	push   %edi
45948f:	55                   	push   %ebp
459490:	e8 0b a3 fa ff       	call   0x4037a0
459495:	8b da                	mov    %edx,%ebx
459497:	8b e8                	mov    %eax,%ebp
459499:	8b 85 80 00 00 00    	mov    0x80(%ebp),%eax
45949f:	e8 48 9f fa ff       	call   0x4033ec
4594a4:	8b 85 88 00 00 00    	mov    0x88(%ebp),%eax
4594aa:	e8 3d 9f fa ff       	call   0x4033ec
4594af:	8b 85 84 00 00 00    	mov    0x84(%ebp),%eax
4594b5:	e8 32 9f fa ff       	call   0x4033ec
4594ba:	8b 45 54             	mov    0x54(%ebp),%eax
4594bd:	e8 2a 9f fa ff       	call   0x4033ec
4594c2:	8b 45 50             	mov    0x50(%ebp),%eax
4594c5:	e8 22 9f fa ff       	call   0x4033ec
4594ca:	8b 45 4c             	mov    0x4c(%ebp),%eax
4594cd:	e8 1a 9f fa ff       	call   0x4033ec
4594d2:	8b 45 30             	mov    0x30(%ebp),%eax
4594d5:	e8 12 9f fa ff       	call   0x4033ec
4594da:	8b 45 34             	mov    0x34(%ebp),%eax
4594dd:	e8 0a 9f fa ff       	call   0x4033ec
4594e2:	8b 45 7c             	mov    0x7c(%ebp),%eax
4594e5:	e8 02 9f fa ff       	call   0x4033ec
4594ea:	8b 45 58             	mov    0x58(%ebp),%eax
4594ed:	85 c0                	test   %eax,%eax
4594ef:	74 1e                	je     0x45950f
4594f1:	8b 70 08             	mov    0x8(%eax),%esi
4594f4:	4e                   	dec    %esi
4594f5:	85 f6                	test   %esi,%esi
4594f7:	7c 16                	jl     0x45950f
4594f9:	46                   	inc    %esi
4594fa:	33 ff                	xor    %edi,%edi
4594fc:	8b 45 58             	mov    0x58(%ebp),%eax
4594ff:	8b d7                	mov    %edi,%edx
459501:	e8 ea 28 fc ff       	call   0x41bdf0
459506:	e8 e1 9e fa ff       	call   0x4033ec
45950b:	47                   	inc    %edi
45950c:	4e                   	dec    %esi
45950d:	75 ed                	jne    0x4594fc
45950f:	8b 45 58             	mov    0x58(%ebp),%eax
459512:	e8 d5 9e fa ff       	call   0x4033ec
459517:	8b c5                	mov    %ebp,%eax
459519:	e8 2e 02 00 00       	call   0x45974c
45951e:	a1 40 b0 49 00       	mov    0x49b040,%eax
459523:	33 d2                	xor    %edx,%edx
459525:	89 10                	mov    %edx,(%eax)
459527:	89 50 04             	mov    %edx,0x4(%eax)
45952a:	a1 50 b0 49 00       	mov    0x49b050,%eax
45952f:	33 d2                	xor    %edx,%edx
459531:	89 10                	mov    %edx,(%eax)
459533:	89 50 04             	mov    %edx,0x4(%eax)
459536:	8b d3                	mov    %ebx,%edx
459538:	80 e2 fc             	and    $0xfc,%dl
45953b:	8b c5                	mov    %ebp,%eax
45953d:	e8 0a ae fc ff       	call   0x42434c