9db178:	8b ec                	mov    %esp,%ebp
9db17a:	83 ec 58             	sub    $0x58,%esp
9db17d:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
9db182:	33 c5                	xor    %ebp,%eax
9db184:	89 45 fc             	mov    %eax,-0x4(%ebp)
9db187:	53                   	push   %ebx
9db188:	56                   	push   %esi
9db189:	33 f6                	xor    %esi,%esi
9db18b:	8d 45 dc             	lea    -0x24(%ebp),%eax
9db18e:	57                   	push   %edi
9db18f:	50                   	push   %eax
9db190:	8b d9                	mov    %ecx,%ebx
9db192:	89 75 dc             	mov    %esi,-0x24(%ebp)
9db195:	89 75 e0             	mov    %esi,-0x20(%ebp)
9db198:	89 75 e4             	mov    %esi,-0x1c(%ebp)
9db19b:	89 75 e8             	mov    %esi,-0x18(%ebp)
9db19e:	ff 15 50 40 d8 00    	call   *0xd84050
9db1a4:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
9db1a7:	e8 77 2d a6 ff       	call   0x43df23
9db1ac:	8b 0b                	mov    (%ebx),%ecx
9db1ae:	8b f8                	mov    %eax,%edi
9db1b0:	56                   	push   %esi
9db1b1:	8d 45 dc             	lea    -0x24(%ebp),%eax
9db1b4:	89 7d c8             	mov    %edi,-0x38(%ebp)
9db1b7:	50                   	push   %eax
9db1b8:	8b 71 0c             	mov    0xc(%ecx),%esi
9db1bb:	8b ce                	mov    %esi,%ecx
9db1bd:	e8 a3 14 a5 ff       	call   0x42c665
9db1c2:	8b cb                	mov    %ebx,%ecx
9db1c4:	ff d6                	call   *%esi
9db1c6:	33 f6                	xor    %esi,%esi
9db1c8:	8d 45 ec             	lea    -0x14(%ebp),%eax
9db1cb:	50                   	push   %eax
9db1cc:	89 75 ec             	mov    %esi,-0x14(%ebp)
9db1cf:	89 75 f0             	mov    %esi,-0x10(%ebp)
9db1d2:	89 75 f4             	mov    %esi,-0xc(%ebp)
9db1d5:	89 75 f8             	mov    %esi,-0x8(%ebp)
9db1d8:	ff 15 50 40 d8 00    	call   *0xd84050
9db1de:	8d 45 cc             	lea    -0x34(%ebp),%eax
9db1e1:	89 75 cc             	mov    %esi,-0x34(%ebp)
9db1e4:	50                   	push   %eax
9db1e5:	89 75 d0             	mov    %esi,-0x30(%ebp)
9db1e8:	89 75 d4             	mov    %esi,-0x2c(%ebp)
9db1eb:	89 75 d8             	mov    %esi,-0x28(%ebp)
9db1ee:	ff 15 50 40 d8 00    	call   *0xd84050
9db1f4:	8b 4b 04             	mov    0x4(%ebx),%ecx
9db1f7:	89 75 b0             	mov    %esi,-0x50(%ebp)
9db1fa:	89 75 b4             	mov    %esi,-0x4c(%ebp)
9db1fd:	89 75 a8             	mov    %esi,-0x58(%ebp)
9db200:	89 75 ac             	mov    %esi,-0x54(%ebp)
9db203:	85 c9                	test   %ecx,%ecx
9db205:	74 3f                	je     0x9db246
9db207:	e8 6f e6 a3 ff       	call   0x41987b
9db20c:	a9 00 00 00 10       	test   $0x10000000,%eax
9db211:	75 04                	jne    0x9db217
9db213:	85 ff                	test   %edi,%edi
9db215:	74 2f                	je     0x9db246
9db217:	8d 45 ec             	lea    -0x14(%ebp),%eax
9db21a:	50                   	push   %eax
9db21b:	8b 43 04             	mov    0x4(%ebx),%eax
9db21e:	ff 70 20             	push   0x20(%eax)
9db221:	ff 15 40 3e d8 00    	call   *0xd83e40
9db227:	8b 7b 04             	mov    0x4(%ebx),%edi
9db22a:	8d 4d b0             	lea    -0x50(%ebp),%ecx
9db22d:	51                   	push   %ecx
9db22e:	8b 07                	mov    (%edi),%eax
9db230:	8b b0 70 02 00 00    	mov    0x270(%eax),%esi
9db236:	8b ce                	mov    %esi,%ecx
9db238:	e8 28 14 a5 ff       	call   0x42c665
9db23d:	8b cf                	mov    %edi,%ecx
9db23f:	ff d6                	call   *%esi
9db241:	8b 7d c8             	mov    -0x38(%ebp),%edi
9db244:	33 f6                	xor    %esi,%esi
9db246:	8b 4b 10             	mov    0x10(%ebx),%ecx
9db249:	85 c9                	test   %ecx,%ecx
9db24b:	74 3c                	je     0x9db289
9db24d:	e8 d5 a9 a2 ff       	call   0x405c27
9db252:	85 c0                	test   %eax,%eax
9db254:	75 04                	jne    0x9db25a
9db256:	85 ff                	test   %edi,%edi
9db258:	74 2f                	je     0x9db289
9db25a:	8b 7b 10             	mov    0x10(%ebx),%edi
9db25d:	8d 4d ec             	lea    -0x14(%ebp),%ecx
9db260:	56                   	push   %esi
9db261:	51                   	push   %ecx
9db262:	8b 07                	mov    (%edi),%eax
9db264:	8b 70 0c             	mov    0xc(%eax),%esi
9db267:	8b ce                	mov    %esi,%ecx
9db269:	e8 f7 13 a5 ff       	call   0x42c665
9db26e:	8b cf                	mov    %edi,%ecx
9db270:	ff d6                	call   *%esi
9db272:	8b 7b 10             	mov    0x10(%ebx),%edi
9db275:	8d 4d b0             	lea    -0x50(%ebp),%ecx
9db278:	51                   	push   %ecx
9db279:	8b 07                	mov    (%edi),%eax
9db27b:	8b 70 10             	mov    0x10(%eax),%esi
9db27e:	8b ce                	mov    %esi,%ecx
9db280:	e8 e0 13 a5 ff       	call   0x42c665
9db285:	8b cf                	mov    %edi,%ecx
9db287:	ff d6                	call   *%esi
9db289:	8b 4b 08             	mov    0x8(%ebx),%ecx
9db28c:	85 c9                	test   %ecx,%ecx
9db28e:	74 3d                	je     0x9db2cd
9db290:	e8 e6 e5 a3 ff       	call   0x41987b
9db295:	a9 00 00 00 10       	test   $0x10000000,%eax
9db29a:	75 07                	jne    0x9db2a3
9db29c:	8b 75 c8             	mov    -0x38(%ebp),%esi
9db29f:	85 f6                	test   %esi,%esi
9db2a1:	74 2d                	je     0x9db2d0
9db2a3:	8d 45 cc             	lea    -0x34(%ebp),%eax
9db2a6:	50                   	push   %eax
9db2a7:	8b 43 08             	mov    0x8(%ebx),%eax
9db2aa:	ff 70 20             	push   0x20(%eax)
9db2ad:	ff 15 40 3e d8 00    	call   *0xd83e40
9db2b3:	8b 7b 08             	mov    0x8(%ebx),%edi
9db2b6:	8d 4d a8             	lea    -0x58(%ebp),%ecx
9db2b9:	51                   	push   %ecx
9db2ba:	8b 07                	mov    (%edi),%eax
9db2bc:	8b b0 70 02 00 00    	mov    0x270(%eax),%esi
9db2c2:	8b ce                	mov    %esi,%ecx
9db2c4:	e8 9c 13 a5 ff       	call   0x42c665
9db2c9:	8b cf                	mov    %edi,%ecx
9db2cb:	ff d6                	call   *%esi
9db2cd:	8b 75 c8             	mov    -0x38(%ebp),%esi
9db2d0:	8b 4b 14             	mov    0x14(%ebx),%ecx
9db2d3:	85 c9                	test   %ecx,%ecx
9db2d5:	74 3d                	je     0x9db314
9db2d7:	e8 4b a9 a2 ff       	call   0x405c27
9db2dc:	85 c0                	test   %eax,%eax
9db2de:	75 04                	jne    0x9db2e4
9db2e0:	85 f6                	test   %esi,%esi
9db2e2:	74 30                	je     0x9db314
9db2e4:	8b 7b 14             	mov    0x14(%ebx),%edi
9db2e7:	8d 4d cc             	lea    -0x34(%ebp),%ecx
9db2ea:	6a 00                	push   $0x0
9db2ec:	51                   	push   %ecx
9db2ed:	8b 07                	mov    (%edi),%eax
9db2ef:	8b 70 0c             	mov    0xc(%eax),%esi
9db2f2:	8b ce                	mov    %esi,%ecx
9db2f4:	e8 6c 13 a5 ff       	call   0x42c665
9db2f9:	8b cf                	mov    %edi,%ecx
9db2fb:	ff d6                	call   *%esi
9db2fd:	8b 7b 14             	mov    0x14(%ebx),%edi
9db300:	8d 4d a8             	lea    -0x58(%ebp),%ecx
9db303:	51                   	push   %ecx
9db304:	8b 07                	mov    (%edi),%eax
9db306:	8b 70 10             	mov    0x10(%eax),%esi
9db309:	8b ce                	mov    %esi,%ecx
9db30b:	e8 55 13 a5 ff       	call   0x42c665
9db310:	8b cf                	mov    %edi,%ecx
9db312:	ff d6                	call   *%esi
9db314:	33 c0                	xor    %eax,%eax
9db316:	8b cb                	mov    %ebx,%ecx
9db318:	39 45 c8             	cmp    %eax,-0x38(%ebp)
9db31b:	0f 94 c0             	sete   %al
9db31e:	50                   	push   %eax
9db31f:	89 45 c8             	mov    %eax,-0x38(%ebp)
9db322:	e8 5b 25 a3 ff       	call   0x40d882
9db327:	8b 75 c8             	mov    -0x38(%ebp),%esi
9db32a:	85 c0                	test   %eax,%eax
9db32c:	75 34                	jne    0x9db362
9db32e:	56                   	push   %esi
9db32f:	8b cb                	mov    %ebx,%ecx
9db331:	e8 db d9 a5 ff       	call   0x438d11
9db336:	85 c0                	test   %eax,%eax
9db338:	74 28                	je     0x9db362
9db33a:	8b 43 04             	mov    0x4(%ebx),%eax
9db33d:	6a 64                	push   $0x64
9db33f:	5e                   	pop    %esi
9db340:	85 c0                	test   %eax,%eax
9db342:	74 06                	je     0x9db34a
9db344:	89 b0 d0 02 00 00    	mov    %esi,0x2d0(%eax)
9db34a:	8b 4b 10             	mov    0x10(%ebx),%ecx
9db34d:	85 c9                	test   %ecx,%ecx
9db34f:	0f 84 71 02 00 00    	je     0x9db5c6
9db355:	e8 c5 ab a2 ff       	call   0x405f1f
9db35a:	8b 43 10             	mov    0x10(%ebx),%eax
9db35d:	e9 61 02 00 00       	jmp    0x9db5c3
9db362:	56                   	push   %esi
9db363:	8b cb                	mov    %ebx,%ecx
9db365:	e8 18 25 a3 ff       	call   0x40d882
9db36a:	85 c0                	test   %eax,%eax
9db36c:	74 31                	je     0x9db39f
9db36e:	56                   	push   %esi
9db36f:	8b cb                	mov    %ebx,%ecx
9db371:	e8 9b d9 a5 ff       	call   0x438d11
9db376:	85 c0                	test   %eax,%eax
9db378:	75 25                	jne    0x9db39f
9db37a:	8b 43 08             	mov    0x8(%ebx),%eax
9db37d:	6a 64                	push   $0x64
9db37f:	5e                   	pop    %esi
9db380:	85 c0                	test   %eax,%eax
9db382:	74 06                	je     0x9db38a
9db384:	89 b0 d0 02 00 00    	mov    %esi,0x2d0(%eax)
9db38a:	8b 4b 14             	mov    0x14(%ebx),%ecx
9db38d:	85 c9                	test   %ecx,%ecx
9db38f:	0f 84 31 02 00 00    	je     0x9db5c6
9db395:	e8 85 ab a2 ff       	call   0x405f1f
9db39a:	e9 21 02 00 00       	jmp    0x9db5c0
9db39f:	56                   	push   %esi
9db3a0:	8b cb                	mov    %ebx,%ecx
9db3a2:	e8 db 24 a3 ff       	call   0x40d882
9db3a7:	85 c0                	test   %eax,%eax
9db3a9:	0f 85 17 02 00 00    	jne    0x9db5c6
9db3af:	56                   	push   %esi
9db3b0:	8b cb                	mov    %ebx,%ecx
9db3b2:	e8 5a d9 a5 ff       	call   0x438d11
9db3b7:	85 c0                	test   %eax,%eax
9db3b9:	0f 85 07 02 00 00    	jne    0x9db5c6
9db3bf:	39 43 0c             	cmp    %eax,0xc(%ebx)
9db3c2:	0f 84 0f 02 00 00    	je     0x9db5d7
9db3c8:	8b cb                	mov    %ebx,%ecx
9db3ca:	e8 ba 63 a3 ff       	call   0x411789
9db3cf:	83 c9 ff             	or     $0xffffffff,%ecx
9db3d2:	89 4d c8             	mov    %ecx,-0x38(%ebp)
9db3d5:	6a 64                	push   $0x64
9db3d7:	85 c0                	test   %eax,%eax
9db3d9:	0f 84 b5 00 00 00    	je     0x9db494
9db3df:	8b 55 f8             	mov    -0x8(%ebp),%edx
9db3e2:	8b c2                	mov    %edx,%eax
9db3e4:	8b 75 d8             	mov    -0x28(%ebp),%esi
9db3e7:	2b 75 d0             	sub    -0x30(%ebp),%esi
9db3ea:	2b 45 f0             	sub    -0x10(%ebp),%eax
9db3ed:	8b 7d e8             	mov    -0x18(%ebp),%edi
9db3f0:	03 c6                	add    %esi,%eax
9db3f2:	2b 7d e0             	sub    -0x20(%ebp),%edi
9db3f5:	89 75 bc             	mov    %esi,-0x44(%ebp)
9db3f8:	89 7d c4             	mov    %edi,-0x3c(%ebp)
9db3fb:	5e                   	pop    %esi
9db3fc:	3b c7                	cmp    %edi,%eax
9db3fe:	7e 77                	jle    0x9db477
9db400:	8b c2                	mov    %edx,%eax
9db402:	2b 45 f0             	sub    -0x10(%ebp),%eax
9db405:	6a 32                	push   $0x32
9db407:	59                   	pop    %ecx
9db408:	89 4d c8             	mov    %ecx,-0x38(%ebp)
9db40b:	3b c7                	cmp    %edi,%eax
9db40d:	75 37                	jne    0x9db446
9db40f:	8b 43 08             	mov    0x8(%ebx),%eax
9db412:	85 c0                	test   %eax,%eax
9db414:	74 08                	je     0x9db41e
9db416:	8b 88 d0 02 00 00    	mov    0x2d0(%eax),%ecx
9db41c:	eb 0a                	jmp    0x9db428
9db41e:	8b 43 14             	mov    0x14(%ebx),%eax
9db421:	85 c0                	test   %eax,%eax
9db423:	74 03                	je     0x9db428
9db425:	8b 48 20             	mov    0x20(%eax),%ecx
9db428:	0f af f9             	imul   %ecx,%edi
9db42b:	8b c7                	mov    %edi,%eax
9db42d:	99                   	cltd
9db42e:	f7 fe                	idiv   %esi
9db430:	8b 55 e8             	mov    -0x18(%ebp),%edx
9db433:	2b d0                	sub    %eax,%edx
9db435:	8b c6                	mov    %esi,%eax
9db437:	2b 55 e0             	sub    -0x20(%ebp),%edx
9db43a:	03 55 f0             	add    -0x10(%ebp),%edx
9db43d:	2b c1                	sub    %ecx,%eax
9db43f:	8b c8                	mov    %eax,%ecx
9db441:	89 4d c8             	mov    %ecx,-0x38(%ebp)
9db444:	eb 2e                	jmp    0x9db474
9db446:	39 7d bc             	cmp    %edi,-0x44(%ebp)
9db449:	75 2c                	jne    0x9db477
9db44b:	8b 43 04             	mov    0x4(%ebx),%eax
9db44e:	85 c0                	test   %eax,%eax
9db450:	74 08                	je     0x9db45a
9db452:	8b 88 d0 02 00 00    	mov    0x2d0(%eax),%ecx
9db458:	eb 0a                	jmp    0x9db464
9db45a:	8b 43 10             	mov    0x10(%ebx),%eax
9db45d:	85 c0                	test   %eax,%eax
9db45f:	74 06                	je     0x9db467
9db461:	8b 48 20             	mov    0x20(%eax),%ecx
9db464:	89 4d c8             	mov    %ecx,-0x38(%ebp)
9db467:	0f af f9             	imul   %ecx,%edi
9db46a:	8b c7                	mov    %edi,%eax
9db46c:	99                   	cltd
9db46d:	f7 fe                	idiv   %esi
9db46f:	8b d0                	mov    %eax,%edx
9db471:	03 55 f0             	add    -0x10(%ebp),%edx
9db474:	89 55 f8             	mov    %edx,-0x8(%ebp)
9db477:	2b 55 f0             	sub    -0x10(%ebp),%edx
9db47a:	89 55 bc             	mov    %edx,-0x44(%ebp)
9db47d:	db 45 bc             	fildl  -0x44(%ebp)
9db480:	dd 5d b8             	fstpl  -0x48(%ebp)
9db483:	dd 45 b8             	fldl   -0x48(%ebp)
9db486:	db 45 c4             	fildl  -0x3c(%ebp)
9db489:	dd 5d c0             	fstpl  -0x40(%ebp)
9db48c:	dc 75 c0             	fdivl  -0x40(%ebp)
9db48f:	e9 b4 00 00 00       	jmp    0x9db548
9db494:	8b 45 d4             	mov    -0x2c(%ebp),%eax
9db497:	2b 45 cc             	sub    -0x34(%ebp),%eax
9db49a:	8b 7d e4             	mov    -0x1c(%ebp),%edi
9db49d:	2b 7d dc             	sub    -0x24(%ebp),%edi
9db4a0:	8b 55 f4             	mov    -0xc(%ebp),%edx
9db4a3:	89 45 c4             	mov    %eax,-0x3c(%ebp)
9db4a6:	2b 45 ec             	sub    -0x14(%ebp),%eax
9db4a9:	03 c2                	add    %edx,%eax
9db4ab:	89 7d bc             	mov    %edi,-0x44(%ebp)
9db4ae:	5e                   	pop    %esi
9db4af:	3b c7                	cmp    %edi,%eax
9db4b1:	7e 7d                	jle    0x9db530
9db4b3:	8b c2                	mov    %edx,%eax
9db4b5:	2b 45 ec             	sub    -0x14(%ebp),%eax
9db4b8:	3b c7                	cmp    %edi,%eax
9db4ba:	75 3d                	jne    0x9db4f9
9db4bc:	8b 4b 08             	mov    0x8(%ebx),%ecx
9db4bf:	6a 32                	push   $0x32
9db4c1:	58                   	pop    %eax
9db4c2:	89 45 c8             	mov    %eax,-0x38(%ebp)
9db4c5:	85 c9                	test   %ecx,%ecx
9db4c7:	74 08                	je     0x9db4d1
9db4c9:	8b 81 d0 02 00 00    	mov    0x2d0(%ecx),%eax
9db4cf:	eb 0a                	jmp    0x9db4db
9db4d1:	8b 4b 14             	mov    0x14(%ebx),%ecx
9db4d4:	85 c9                	test   %ecx,%ecx
9db4d6:	74 06                	je     0x9db4de
9db4d8:	8b 41 20             	mov    0x20(%ecx),%eax
9db4db:	89 45 c8             	mov    %eax,-0x38(%ebp)
9db4de:	0f af c7             	imul   %edi,%eax
9db4e1:	8b ce                	mov    %esi,%ecx
9db4e3:	99                   	cltd
9db4e4:	f7 fe                	idiv   %esi
9db4e6:	8b 55 e4             	mov    -0x1c(%ebp),%edx
9db4e9:	2b d0                	sub    %eax,%edx
9db4eb:	2b 55 dc             	sub    -0x24(%ebp),%edx
9db4ee:	03 55 ec             	add    -0x14(%ebp),%edx
9db4f1:	2b 4d c8             	sub    -0x38(%ebp),%ecx
9db4f4:	89 4d c8             	mov    %ecx,-0x38(%ebp)
9db4f7:	eb 34                	jmp    0x9db52d
9db4f9:	39 7d c4             	cmp    %edi,-0x3c(%ebp)
9db4fc:	75 32                	jne    0x9db530
9db4fe:	8b 43 04             	mov    0x4(%ebx),%eax
9db501:	6a 32                	push   $0x32
9db503:	59                   	pop    %ecx
9db504:	89 4d c8             	mov    %ecx,-0x38(%ebp)
9db507:	85 c0                	test   %eax,%eax
9db509:	74 08                	je     0x9db513
9db50b:	8b 88 d0 02 00 00    	mov    0x2d0(%eax),%ecx
9db511:	eb 0a                	jmp    0x9db51d
9db513:	8b 43 10             	mov    0x10(%ebx),%eax
9db516:	85 c0                	test   %eax,%eax
9db518:	74 06                	je     0x9db520
9db51a:	8b 48 20             	mov    0x20(%eax),%ecx
9db51d:	89 4d c8             	mov    %ecx,-0x38(%ebp)
9db520:	0f af f9             	imul   %ecx,%edi
9db523:	8b c7                	mov    %edi,%eax
9db525:	99                   	cltd
9db526:	f7 fe                	idiv   %esi
9db528:	8b d0                	mov    %eax,%edx
9db52a:	03 55 ec             	add    -0x14(%ebp),%edx
9db52d:	89 55 f4             	mov    %edx,-0xc(%ebp)