448f7d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
448f7e:	6b c0 32             	imul   $0x32,%eax,%eax
448f81:	a5                   	movsl  %ds:(%esi),%es:(%edi)
448f82:	99                   	cltd
448f83:	f7 f9                	idiv   %ecx
448f85:	89 85 54 fc ff ff    	mov    %eax,-0x3ac(%ebp)
448f8b:	33 c0                	xor    %eax,%eax
448f8d:	89 85 28 f2 ff ff    	mov    %eax,-0xdd8(%ebp)
448f93:	e9 3e f5 ff ff       	jmp    0x4484d6
448f98:	8b 35 f4 00 4a 00    	mov    0x4a00f4,%esi
448f9e:	8d bd ac fa ff ff    	lea    -0x554(%ebp),%edi
448fa4:	6a 0a                	push   $0xa
448fa6:	59                   	pop    %ecx
448fa7:	33 c0                	xor    %eax,%eax
448fa9:	f3 ab                	rep stos %eax,%es:(%edi)
448fab:	52                   	push   %edx
448fac:	50                   	push   %eax
448fad:	8b ce                	mov    %esi,%ecx
448faf:	ff 15 2c 81 4a 00    	call   *0x4a812c
448fb5:	ff d6                	call   *%esi
448fb7:	8b 35 d4 00 4a 00    	mov    0x4a00d4,%esi
448fbd:	8d 8d ac fa ff ff    	lea    -0x554(%ebp),%ecx
448fc3:	51                   	push   %ecx
448fc4:	50                   	push   %eax
448fc5:	8b ce                	mov    %esi,%ecx
448fc7:	c7 85 ac fa ff ff 28 	movl   $0x28,-0x554(%ebp)
448fce:	00 00 00
448fd1:	ff 15 2c 81 4a 00    	call   *0x4a812c
448fd7:	ff d6                	call   *%esi
448fd9:	85 c0                	test   %eax,%eax
448fdb:	74 ae                	je     0x448f8b
448fdd:	8b 35 f0 00 4a 00    	mov    0x4a00f0,%esi
448fe3:	8d 85 c0 fa ff ff    	lea    -0x540(%ebp),%eax
448fe9:	50                   	push   %eax
448fea:	33 c0                	xor    %eax,%eax
448fec:	8b ce                	mov    %esi,%ecx
448fee:	50                   	push   %eax
448fef:	ff 15 2c 81 4a 00    	call   *0x4a812c
448ff5:	ff d6                	call   *%esi
448ff7:	8b 35 f0 00 4a 00    	mov    0x4a00f0,%esi
448ffd:	8d 85 c8 fa ff ff    	lea    -0x538(%ebp),%eax
449003:	50                   	push   %eax
449004:	33 c0                	xor    %eax,%eax
449006:	8b ce                	mov    %esi,%ecx
449008:	50                   	push   %eax
449009:	ff 15 2c 81 4a 00    	call   *0x4a812c
44900f:	ff d6                	call   *%esi
449011:	83 bd fc f1 ff ff 00 	cmpl   $0x0,-0xe04(%ebp)
449018:	8d b5 c0 fa ff ff    	lea    -0x540(%ebp),%esi
44901e:	8d bd 44 fa ff ff    	lea    -0x5bc(%ebp),%edi
449024:	a5                   	movsl  %ds:(%esi),%es:(%edi)
449025:	6a 64                	push   $0x64
449027:	59                   	pop    %ecx
449028:	a5                   	movsl  %ds:(%esi),%es:(%edi)
449029:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44902a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44902b:	74 12                	je     0x44903f
44902d:	6b 85 c8 fa ff ff 05 	imul   $0x5,-0x538(%ebp),%eax
449034:	99                   	cltd
449035:	f7 f9                	idiv   %ecx
449037:	03 85 c0 fa ff ff    	add    -0x540(%ebp),%eax
44903d:	eb 12                	jmp    0x449051
44903f:	8b 85 c8 fa ff ff    	mov    -0x538(%ebp),%eax
449045:	2b 85 04 f2 ff ff    	sub    -0xdfc(%ebp),%eax
44904b:	6b c0 5f             	imul   $0x5f,%eax,%eax
44904e:	99                   	cltd
44904f:	f7 f9                	idiv   %ecx
449051:	89 85 50 fc ff ff    	mov    %eax,-0x3b0(%ebp)
449057:	8b 85 cc fa ff ff    	mov    -0x534(%ebp),%eax
44905d:	2b 85 08 f2 ff ff    	sub    -0xdf8(%ebp),%eax
449063:	6b c0 5f             	imul   $0x5f,%eax,%eax
449066:	e9 17 ff ff ff       	jmp    0x448f82
44906b:	33 c0                	xor    %eax,%eax
44906d:	89 85 50 fc ff ff    	mov    %eax,-0x3b0(%ebp)
449073:	89 85 54 fc ff ff    	mov    %eax,-0x3ac(%ebp)
449079:	e9 0f ff ff ff       	jmp    0x448f8d
44907e:	8b bd 10 f2 ff ff    	mov    -0xdf0(%ebp),%edi
449084:	8b 35 90 00 4a 00    	mov    0x4a0090,%esi
44908a:	8b ce                	mov    %esi,%ecx
44908c:	6a 01                	push   $0x1
44908e:	ff b5 e0 f1 ff ff    	push   -0xe20(%ebp)
449094:	ff 15 2c 81 4a 00    	call   *0x4a812c
44909a:	ff d6                	call   *%esi
44909c:	83 bd 20 f5 ff ff 00 	cmpl   $0x0,-0xae0(%ebp)
4490a3:	89 85 b0 f1 ff ff    	mov    %eax,-0xe50(%ebp)
4490a9:	c7 85 e4 f1 ff ff 10 	movl   $0x810,-0xe1c(%ebp)
4490b0:	08 00 00
4490b3:	74 0a                	je     0x4490bf
4490b5:	c7 85 e4 f1 ff ff 12 	movl   $0x20812,-0xe1c(%ebp)
4490bc:	08 02 00
4490bf:	83 bd 08 f2 ff ff 00 	cmpl   $0x0,-0xdf8(%ebp)
4490c6:	0f 84 94 0b 00 00    	je     0x449c60
4490cc:	8b 85 24 f5 ff ff    	mov    -0xadc(%ebp),%eax
4490d2:	8b b5 28 f5 ff ff    	mov    -0xad8(%ebp),%esi
4490d8:	89 85 04 f2 ff ff    	mov    %eax,-0xdfc(%ebp)
4490de:	8b 85 34 f5 ff ff    	mov    -0xacc(%ebp),%eax
4490e4:	89 85 fc f1 ff ff    	mov    %eax,-0xe04(%ebp)
4490ea:	33 c0                	xor    %eax,%eax
4490ec:	6a 54                	push   $0x54
4490ee:	50                   	push   %eax
4490ef:	8d 85 d0 f3 ff ff    	lea    -0xc30(%ebp),%eax
4490f5:	89 b5 d0 f1 ff ff    	mov    %esi,-0xe30(%ebp)
4490fb:	50                   	push   %eax
4490fc:	e8 38 7f 04 00       	call   0x491039
449101:	33 c0                	xor    %eax,%eax
449103:	6a 54                	push   $0x54
449105:	50                   	push   %eax
449106:	8d 85 d4 f2 ff ff    	lea    -0xd2c(%ebp),%eax
44910c:	50                   	push   %eax
44910d:	e8 27 7f 04 00       	call   0x491039
449112:	33 c0                	xor    %eax,%eax
449114:	6a 2c                	push   $0x2c
449116:	50                   	push   %eax
449117:	89 85 e8 f1 ff ff    	mov    %eax,-0xe18(%ebp)
44911d:	89 85 08 f2 ff ff    	mov    %eax,-0xdf8(%ebp)
449123:	89 85 f4 f1 ff ff    	mov    %eax,-0xe0c(%ebp)
449129:	89 85 00 f2 ff ff    	mov    %eax,-0xe00(%ebp)
44912f:	8d 85 a4 fb ff ff    	lea    -0x45c(%ebp),%eax
449135:	50                   	push   %eax
449136:	e8 fe 7e 04 00       	call   0x491039
44913b:	33 c0                	xor    %eax,%eax
44913d:	8d bd 10 fc ff ff    	lea    -0x3f0(%ebp),%edi
449143:	ab                   	stos   %eax,%es:(%edi)
449144:	83 c4 24             	add    $0x24,%esp
449147:	ab                   	stos   %eax,%es:(%edi)
449148:	ab                   	stos   %eax,%es:(%edi)
449149:	ab                   	stos   %eax,%es:(%edi)
44914a:	85 f6                	test   %esi,%esi
44914c:	0f 84 ba 1a 00 00    	je     0x44ac0c
449152:	8b bd e0 f1 ff ff    	mov    -0xe20(%ebp),%edi
449158:	8b 35 78 00 4a 00    	mov    0x4a0078,%esi
44915e:	8b ce                	mov    %esi,%ecx
449160:	6a 07                	push   $0x7
449162:	57                   	push   %edi
449163:	ff 15 2c 81 4a 00    	call   *0x4a812c
449169:	ff d6                	call   *%esi
44916b:	85 c0                	test   %eax,%eax
44916d:	0f 84 83 0b 00 00    	je     0x449cf6
449173:	8b 35 84 00 4a 00    	mov    0x4a0084,%esi
449179:	8d 8d d0 f3 ff ff    	lea    -0xc30(%ebp),%ecx
44917f:	51                   	push   %ecx
449180:	6a 54                	push   $0x54
449182:	50                   	push   %eax
449183:	8b ce                	mov    %esi,%ecx
449185:	ff 15 2c 81 4a 00    	call   *0x4a812c
44918b:	ff d6                	call   *%esi
44918d:	85 c0                	test   %eax,%eax
44918f:	74 24                	je     0x4491b5
449191:	8b 85 e4 f3 ff ff    	mov    -0xc1c(%ebp),%eax
449197:	89 85 e8 f1 ff ff    	mov    %eax,-0xe18(%ebp)
44919d:	8b 85 d4 f3 ff ff    	mov    -0xc2c(%ebp),%eax
4491a3:	89 85 f4 f1 ff ff    	mov    %eax,-0xe0c(%ebp)
4491a9:	8b 85 d8 f3 ff ff    	mov    -0xc28(%ebp),%eax
4491af:	89 85 00 f2 ff ff    	mov    %eax,-0xe00(%ebp)
4491b5:	8b 35 58 00 4a 00    	mov    0x4a0058,%esi
4491bb:	8b ce                	mov    %esi,%ecx
4491bd:	57                   	push   %edi
4491be:	ff 15 2c 81 4a 00    	call   *0x4a812c
4491c4:	ff d6                	call   *%esi
4491c6:	8b d0                	mov    %eax,%edx
4491c8:	89 95 0c f2 ff ff    	mov    %edx,-0xdf4(%ebp)
4491ce:	85 d2                	test   %edx,%edx
4491d0:	0f 84 20 0b 00 00    	je     0x449cf6
4491d6:	8b 85 4c f5 ff ff    	mov    -0xab4(%ebp),%eax
4491dc:	33 f6                	xor    %esi,%esi
4491de:	2b 85 44 f5 ff ff    	sub    -0xabc(%ebp),%eax
4491e4:	8b fe                	mov    %esi,%edi
4491e6:	8b 8d 50 f5 ff ff    	mov    -0xab0(%ebp),%ecx
4491ec:	2b 8d 48 f5 ff ff    	sub    -0xab8(%ebp),%ecx
4491f2:	89 85 a8 fb ff ff    	mov    %eax,-0x458(%ebp)
4491f8:	f7 d9                	neg    %ecx
4491fa:	33 c0                	xor    %eax,%eax
4491fc:	89 8d ac fb ff ff    	mov    %ecx,-0x454(%ebp)
449202:	6a 20                	push   $0x20
449204:	40                   	inc    %eax
449205:	89 b5 dc f0 ff ff    	mov    %esi,-0xf24(%ebp)
44920b:	66 89 85 b0 fb ff ff 	mov    %ax,-0x450(%ebp)
449212:	33 c9                	xor    %ecx,%ecx
449214:	58                   	pop    %eax
449215:	51                   	push   %ecx
449216:	51                   	push   %ecx
449217:	66 89 85 b2 fb ff ff 	mov    %ax,-0x44e(%ebp)
44921e:	8d 85 dc f0 ff ff    	lea    -0xf24(%ebp),%eax
449224:	50                   	push   %eax
449225:	51                   	push   %ecx
449226:	8d 85 a4 fb ff ff    	lea    -0x45c(%ebp),%eax
44922c:	89 b5 b4 fb ff ff    	mov    %esi,-0x44c(%ebp)
449232:	50                   	push   %eax
449233:	89 b5 b8 fb ff ff    	mov    %esi,-0x448(%ebp)
449239:	89 b5 bc fb ff ff    	mov    %esi,-0x444(%ebp)
44923f:	89 b5 c0 fb ff ff    	mov    %esi,-0x440(%ebp)
449245:	89 b5 c4 fb ff ff    	mov    %esi,-0x43c(%ebp)
44924b:	89 b5 c8 fb ff ff    	mov    %esi,-0x438(%ebp)
449251:	89 b5 cc fb ff ff    	mov    %esi,-0x434(%ebp)
449257:	8b 35 5c 00 4a 00    	mov    0x4a005c,%esi
44925d:	8b ce                	mov    %esi,%ecx
44925f:	52                   	push   %edx
449260:	89 bd 98 f1 ff ff    	mov    %edi,-0xe68(%ebp)
449266:	c7 85 a4 fb ff ff 28 	movl   $0x28,-0x45c(%ebp)
44926d:	00 00 00
449270:	ff 15 2c 81 4a 00    	call   *0x4a812c
449276:	ff d6                	call   *%esi
449278:	89 85 8c f1 ff ff    	mov    %eax,-0xe74(%ebp)
44927e:	c7 85 24 f2 ff ff ff 	movl   $0xff,-0xddc(%ebp)
449285:	00 00 00
449288:	85 c0                	test   %eax,%eax
44928a:	75 27                	jne    0x4492b3
44928c:	ff 15 b8 72 4a 00    	call   *0x4a72b8
449292:	8b f8                	mov    %eax,%edi
449294:	85 ff                	test   %edi,%edi
449296:	7e 0b                	jle    0x4492a3
449298:	0f b7 ff             	movzwl %di,%edi
44929b:	81 cf 00 00 07 80    	or     $0x80070000,%edi
4492a1:	85 ff                	test   %edi,%edi
4492a3:	0f 88 ca 03 00 00    	js     0x449673
4492a9:	bf 05 40 00 80       	mov    $0x80004005,%edi
4492ae:	e9 c0 03 00 00       	jmp    0x449673
4492b3:	8b 35 84 00 4a 00    	mov    0x4a0084,%esi
4492b9:	8d 8d d4 f2 ff ff    	lea    -0xd2c(%ebp),%ecx
4492bf:	51                   	push   %ecx
4492c0:	6a 54                	push   $0x54
4492c2:	50                   	push   %eax
4492c3:	8b ce                	mov    %esi,%ecx
4492c5:	ff 15 2c 81 4a 00    	call   *0x4a812c
4492cb:	ff d6                	call   *%esi
4492cd:	85 c0                	test   %eax,%eax
4492cf:	74 0c                	je     0x4492dd
4492d1:	8b 85 e8 f2 ff ff    	mov    -0xd18(%ebp),%eax
4492d7:	89 85 08 f2 ff ff    	mov    %eax,-0xdf8(%ebp)
4492dd:	8b 85 4c f5 ff ff    	mov    -0xab4(%ebp),%eax
4492e3:	2b 85 44 f5 ff ff    	sub    -0xabc(%ebp),%eax
4492e9:	ff b5 8c f1 ff ff    	push   -0xe74(%ebp)
4492ef:	8b 35 8c 00 4a 00    	mov    0x4a008c,%esi
4492f5:	8b ce                	mov    %esi,%ecx
4492f7:	ff b5 0c f2 ff ff    	push   -0xdf4(%ebp)
4492fd:	89 85 18 fc ff ff    	mov    %eax,-0x3e8(%ebp)
449303:	8b 85 50 f5 ff ff    	mov    -0xab0(%ebp),%eax
449309:	2b 85 48 f5 ff ff    	sub    -0xab8(%ebp),%eax
44930f:	89 85 1c fc ff ff    	mov    %eax,-0x3e4(%ebp)
449315:	ff 15 2c 81 4a 00    	call   *0x4a812c
44931b:	ff d6                	call   *%esi
44931d:	8b 35 90 00 4a 00    	mov    0x4a0090,%esi
449323:	33 c0                	xor    %eax,%eax
449325:	40                   	inc    %eax
449326:	8b ce                	mov    %esi,%ecx
449328:	50                   	push   %eax
449329:	ff b5 0c f2 ff ff    	push   -0xdf4(%ebp)
44932f:	ff 15 2c 81 4a 00    	call   *0x4a812c
449335:	ff d6                	call   *%esi
449337:	ff b5 fc f1 ff ff    	push   -0xe04(%ebp)
44933d:	8b 35 8c 00 4a 00    	mov    0x4a008c,%esi
449343:	8b ce                	mov    %esi,%ecx
449345:	ff b5 0c f2 ff ff    	push   -0xdf4(%ebp)
44934b:	ff 15 2c 81 4a 00    	call   *0x4a812c
449351:	ff d6                	call   *%esi
449353:	8b 35 88 00 4a 00    	mov    0x4a0088,%esi
449359:	8b ce                	mov    %esi,%ecx
44935b:	89 85 88 f1 ff ff    	mov    %eax,-0xe78(%ebp)
449361:	33 c0                	xor    %eax,%eax
449363:	50                   	push   %eax
449364:	ff 15 2c 81 4a 00    	call   *0x4a812c
44936a:	ff d6                	call   *%esi
44936c:	8b 35 c4 00 4a 00    	mov    0x4a00c4,%esi
449372:	8b ce                	mov    %esi,%ecx
449374:	50                   	push   %eax
449375:	8d 85 10 fc ff ff    	lea    -0x3f0(%ebp),%eax
44937b:	50                   	push   %eax
44937c:	ff b5 0c f2 ff ff    	push   -0xdf4(%ebp)
449382:	ff 15 2c 81 4a 00    	call   *0x4a812c
449388:	ff d6                	call   *%esi
44938a:	8b 35 bc 00 4a 00    	mov    0x4a00bc,%esi
449390:	33 c0                	xor    %eax,%eax
449392:	50                   	push   %eax
449393:	ff b5 e4 f1 ff ff    	push   -0xe1c(%ebp)
449399:	8d 85 10 fc ff ff    	lea    -0x3f0(%ebp),%eax
44939f:	8b ce                	mov    %esi,%ecx
4493a1:	50                   	push   %eax
4493a2:	6a ff                	push   $0xffffffff
4493a4:	ff b5 d0 f1 ff ff    	push   -0xe30(%ebp)
4493aa:	ff b5 0c f2 ff ff    	push   -0xdf4(%ebp)
4493b0:	ff 15 2c 81 4a 00    	call   *0x4a812c
4493b6:	ff d6                	call   *%esi
4493b8:	33 c0                	xor    %eax,%eax
4493ba:	40                   	inc    %eax
4493bb:	39 85 10 f2 ff ff    	cmp    %eax,-0xdf0(%ebp)
4493c1:	75 2e                	jne    0x4493f1
4493c3:	39 bd 04 f2 ff ff    	cmp    %edi,-0xdfc(%ebp)
4493c9:	74 1a                	je     0x4493e5
4493cb:	8b 35 dc 00 4a 00    	mov    0x4a00dc,%esi
4493d1:	8b ce                	mov    %esi,%ecx
4493d3:	6a 08                	push   $0x8
4493d5:	ff 15 2c 81 4a 00    	call   *0x4a812c
4493db:	ff d6                	call   *%esi
4493dd:	89 85 c0 f1 ff ff    	mov    %eax,-0xe40(%ebp)
4493e3:	eb 16                	jmp    0x4493fb
4493e5:	c7 85 c0 f1 ff ff ff 	movl   $0xffffff,-0xe40(%ebp)
4493ec:	ff ff 00
4493ef:	eb 0a                	jmp    0x4493fb
4493f1:	c7 85 c0 f1 ff ff a8 	movl   $0xffa8a8a8,-0xe40(%ebp)
4493f8:	a8 a8 ff
4493fb:	8b b5 44 f5 ff ff    	mov    -0xabc(%ebp),%esi
449401:	33 c9                	xor    %ecx,%ecx
449403:	8b 85 48 f5 ff ff    	mov    -0xab8(%ebp),%eax
449409:	8b d1                	mov    %ecx,%edx
44940b:	89 b5 dc f1 ff ff    	mov    %esi,-0xe24(%ebp)
449411:	89 95 04 f2 ff ff    	mov    %edx,-0xdfc(%ebp)
449417:	85 f6                	test   %esi,%esi
449419:	79 12                	jns    0x44942d
44941b:	8b d6                	mov    %esi,%edx
44941d:	f7 da                	neg    %edx
44941f:	33 f6                	xor    %esi,%esi
449421:	89 95 04 f2 ff ff    	mov    %edx,-0xdfc(%ebp)
449427:	89 b5 dc f1 ff ff    	mov    %esi,-0xe24(%ebp)
44942d:	85 c0                	test   %eax,%eax
44942f:	79 06                	jns    0x449437
449431:	8b c8                	mov    %eax,%ecx
449433:	f7 d9                	neg    %ecx
449435:	33 c0                	xor    %eax,%eax
449437:	8b b5 18 fc ff ff    	mov    -0x3e8(%ebp),%esi
44943d:	2b f2                	sub    %edx,%esi
44943f:	8b 95 f4 f1 ff ff    	mov    -0xe0c(%ebp),%edx
449445:	2b 95 dc f1 ff ff    	sub    -0xe24(%ebp),%edx
44944b:	89 b5 d4 f1 ff ff    	mov    %esi,-0xe2c(%ebp)
449451:	3b f2                	cmp    %edx,%esi
449453:	7c 08                	jl     0x44945d
449455:	8b f2                	mov    %edx,%esi
449457:	89 95 d4 f1 ff ff    	mov    %edx,-0xe2c(%ebp)
44945d:	8b 95 1c fc ff ff    	mov    -0x3e4(%ebp),%edx
449463:	29 85 00 f2 ff ff    	sub    %eax,-0xe00(%ebp)
449469:	2b d1                	sub    %ecx,%edx
44946b:	89 95 b4 f1 ff ff    	mov    %edx,-0xe4c(%ebp)
449471:	3b 95 00 f2 ff ff    	cmp    -0xe00(%ebp),%edx
449477:	7c 0c                	jl     0x449485
449479:	8b 95 00 f2 ff ff    	mov    -0xe00(%ebp),%edx
44947f:	89 95 b4 f1 ff ff    	mov    %edx,-0xe4c(%ebp)
449485:	85 f6                	test   %esi,%esi
449487:	0f 8e af 01 00 00    	jle    0x44963c
44948d:	85 d2                	test   %edx,%edx
44948f:	0f 8e a7 01 00 00    	jle    0x44963c
449495:	8b 95 18 fc ff ff    	mov    -0x3e8(%ebp),%edx
44949b:	0f af 85 f4 f1 ff ff 	imul   -0xe0c(%ebp),%eax
4494a2:	8b bd e8 f1 ff ff    	mov    -0xe18(%ebp),%edi
4494a8:	8b b5 08 f2 ff ff    	mov    -0xdf8(%ebp),%esi
4494ae:	0f af ca             	imul   %edx,%ecx
4494b1:	c1 e2 02             	shl    $0x2,%edx
4494b4:	03 85 dc f1 ff ff    	add    -0xe24(%ebp),%eax
4494ba:	89 95 fc f1 ff ff    	mov    %edx,-0xe04(%ebp)
4494c0:	8b 95 f4 f1 ff ff    	mov    -0xe0c(%ebp),%edx
4494c6:	03 8d 04 f2 ff ff    	add    -0xdfc(%ebp),%ecx
4494cc:	8d 04 87             	lea    (%edi,%eax,4),%eax