8f9fea:	ff 75 08             	push   0x8(%ebp)
8f9fed:	8d 45 ec             	lea    -0x14(%ebp),%eax
8f9ff0:	68 60 ef d7 00       	push   $0xd7ef60
8f9ff5:	50                   	push   %eax
8f9ff6:	e8 f9 60 b2 ff       	call   0x4200f4
8f9ffb:	83 c4 0c             	add    $0xc,%esp
8f9ffe:	8b 4d 08             	mov    0x8(%ebp),%ecx
8fa001:	50                   	push   %eax
8fa002:	89 7d fc             	mov    %edi,-0x4(%ebp)
8fa005:	e8 e3 86 b1 ff       	call   0x4126ed
8fa00a:	8b 4d ec             	mov    -0x14(%ebp),%ecx
8fa00d:	83 c1 f0             	add    $0xfffffff0,%ecx
8fa010:	e8 ff ab b0 ff       	call   0x404c14
8fa015:	8b 45 08             	mov    0x8(%ebp),%eax
8fa018:	e8 fa 43 b1 ff       	call   0x40e417
8fa01d:	c2 08 00             	ret    $0x8
8fa020:	cc                   	int3
8fa021:	cc                   	int3
8fa022:	cc                   	int3
8fa023:	cc                   	int3
8fa024:	cc                   	int3
8fa025:	cc                   	int3
8fa026:	cc                   	int3
8fa027:	cc                   	int3
8fa028:	cc                   	int3
8fa029:	cc                   	int3
8fa02a:	cc                   	int3
8fa02b:	cc                   	int3
8fa02c:	cc                   	int3
8fa02d:	cc                   	int3
8fa02e:	cc                   	int3
8fa02f:	cc                   	int3
8fa030:	cc                   	int3
8fa031:	cc                   	int3
8fa032:	cc                   	int3
8fa033:	cc                   	int3
8fa034:	cc                   	int3
8fa035:	cc                   	int3
8fa036:	cc                   	int3
8fa037:	cc                   	int3
8fa038:	cc                   	int3
8fa039:	55                   	push   %ebp
8fa03a:	8b ec                	mov    %esp,%ebp
8fa03c:	ff 75 10             	push   0x10(%ebp)
8fa03f:	ff 75 0c             	push   0xc(%ebp)
8fa042:	ff 75 08             	push   0x8(%ebp)
8fa045:	e8 92 c3 b2 ff       	call   0x4263dc
8fa04a:	8b 45 08             	mov    0x8(%ebp),%eax
8fa04d:	5d                   	pop    %ebp
8fa04e:	c2 0c 00             	ret    $0xc
8fa051:	cc                   	int3
8fa052:	cc                   	int3
8fa053:	cc                   	int3
8fa054:	cc                   	int3
8fa055:	cc                   	int3
8fa056:	cc                   	int3
8fa057:	55                   	push   %ebp
8fa058:	8b ec                	mov    %esp,%ebp
8fa05a:	51                   	push   %ecx
8fa05b:	53                   	push   %ebx
8fa05c:	56                   	push   %esi
8fa05d:	57                   	push   %edi
8fa05e:	8b f9                	mov    %ecx,%edi
8fa060:	83 7f 10 00          	cmpl   $0x0,0x10(%edi)
8fa064:	75 31                	jne    0x8fa097
8fa066:	6a 10                	push   $0x10
8fa068:	ff 77 18             	push   0x18(%edi)
8fa06b:	8d 47 14             	lea    0x14(%edi),%eax
8fa06e:	50                   	push   %eax
8fa06f:	e8 38 90 b1 ff       	call   0x4130ac
8fa074:	8b 57 18             	mov    0x18(%edi),%edx
8fa077:	83 c0 08             	add    $0x8,%eax
8fa07a:	8b ca                	mov    %edx,%ecx
8fa07c:	c1 e1 04             	shl    $0x4,%ecx
8fa07f:	83 c1 f0             	add    $0xfffffff0,%ecx
8fa082:	03 c8                	add    %eax,%ecx
8fa084:	eb 0c                	jmp    0x8fa092
8fa086:	8b 47 10             	mov    0x10(%edi),%eax
8fa089:	89 41 08             	mov    %eax,0x8(%ecx)
8fa08c:	89 4f 10             	mov    %ecx,0x10(%edi)
8fa08f:	83 e9 10             	sub    $0x10,%ecx
8fa092:	83 ea 01             	sub    $0x1,%edx
8fa095:	79 ef                	jns    0x8fa086
8fa097:	8b 5f 10             	mov    0x10(%edi),%ebx
8fa09a:	85 db                	test   %ebx,%ebx
8fa09c:	74 32                	je     0x8fa0d0
8fa09e:	8b 73 08             	mov    0x8(%ebx),%esi
8fa0a1:	6a 10                	push   $0x10
8fa0a3:	6a 00                	push   $0x0
8fa0a5:	53                   	push   %ebx
8fa0a6:	89 5d fc             	mov    %ebx,-0x4(%ebp)
8fa0a9:	e8 0a a7 b1 ff       	call   0x4147b8
8fa0ae:	89 73 08             	mov    %esi,0x8(%ebx)
8fa0b1:	83 c4 0c             	add    $0xc,%esp
8fa0b4:	8b 4f 10             	mov    0x10(%edi),%ecx
8fa0b7:	8b c3                	mov    %ebx,%eax
8fa0b9:	8b 49 08             	mov    0x8(%ecx),%ecx
8fa0bc:	ff 47 0c             	incl   0xc(%edi)
8fa0bf:	89 4f 10             	mov    %ecx,0x10(%edi)
8fa0c2:	8b 4d 08             	mov    0x8(%ebp),%ecx
8fa0c5:	5f                   	pop    %edi
8fa0c6:	5e                   	pop    %esi
8fa0c7:	89 0b                	mov    %ecx,(%ebx)
8fa0c9:	5b                   	pop    %ebx
8fa0ca:	8b e5                	mov    %ebp,%esp
8fa0cc:	5d                   	pop    %ebp
8fa0cd:	c2 04 00             	ret    $0x4
8fa0d0:	e8 91 7e b3 ff       	call   0x431f66
8fa0d5:	cc                   	int3
8fa0d6:	cc                   	int3
8fa0d7:	cc                   	int3
8fa0d8:	cc                   	int3
8fa0d9:	cc                   	int3
8fa0da:	cc                   	int3
8fa0db:	cc                   	int3
8fa0dc:	cc                   	int3
8fa0dd:	cc                   	int3
8fa0de:	cc                   	int3
8fa0df:	cc                   	int3
8fa0e0:	cc                   	int3
8fa0e1:	cc                   	int3
8fa0e2:	cc                   	int3
8fa0e3:	cc                   	int3
8fa0e4:	cc                   	int3
8fa0e5:	cc                   	int3
8fa0e6:	cc                   	int3
8fa0e7:	cc                   	int3
8fa0e8:	cc                   	int3
8fa0e9:	cc                   	int3
8fa0ea:	cc                   	int3
8fa0eb:	cc                   	int3
8fa0ec:	cc                   	int3
8fa0ed:	cc                   	int3
8fa0ee:	cc                   	int3
8fa0ef:	cc                   	int3
8fa0f0:	cc                   	int3
8fa0f1:	cc                   	int3
8fa0f2:	cc                   	int3
8fa0f3:	cc                   	int3
8fa0f4:	cc                   	int3
8fa0f5:	55                   	push   %ebp
8fa0f6:	8b ec                	mov    %esp,%ebp
8fa0f8:	83 ec 3c             	sub    $0x3c,%esp
8fa0fb:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
8fa100:	33 c5                	xor    %ebp,%eax
8fa102:	89 45 fc             	mov    %eax,-0x4(%ebp)
8fa105:	8b 45 08             	mov    0x8(%ebp),%eax
8fa108:	53                   	push   %ebx
8fa109:	56                   	push   %esi
8fa10a:	8b d9                	mov    %ecx,%ebx
8fa10c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
8fa10f:	57                   	push   %edi
8fa110:	8b 7d 20             	mov    0x20(%ebp),%edi
8fa113:	89 5d f0             	mov    %ebx,-0x10(%ebp)
8fa116:	e8 d3 5b b2 ff       	call   0x41fcee
8fa11b:	85 c0                	test   %eax,%eax
8fa11d:	0f 84 2d 02 00 00    	je     0x8fa350
8fa123:	85 ff                	test   %edi,%edi
8fa125:	74 0d                	je     0x8fa134
8fa127:	83 bf 8c 00 00 00 00 	cmpl   $0x0,0x8c(%edi)
8fa12e:	0f 85 1c 02 00 00    	jne    0x8fa350
8fa134:	83 bb 34 02 00 00 00 	cmpl   $0x0,0x234(%ebx)
8fa13b:	0f 84 0f 02 00 00    	je     0x8fa350
8fa141:	8b 93 84 02 00 00    	mov    0x284(%ebx),%edx
8fa147:	8b 8b 88 02 00 00    	mov    0x288(%ebx),%ecx
8fa14d:	89 55 f4             	mov    %edx,-0xc(%ebp)
8fa150:	89 4d f8             	mov    %ecx,-0x8(%ebp)
8fa153:	85 d2                	test   %edx,%edx
8fa155:	75 08                	jne    0x8fa15f
8fa157:	85 c9                	test   %ecx,%ecx
8fa159:	0f 84 0b 02 00 00    	je     0x8fa36a
8fa15f:	8b 75 1c             	mov    0x1c(%ebp),%esi
8fa162:	85 f6                	test   %esi,%esi
8fa164:	74 0a                	je     0x8fa170
8fa166:	8b 45 14             	mov    0x14(%ebp),%eax
8fa169:	2b c2                	sub    %edx,%eax
8fa16b:	89 45 0c             	mov    %eax,0xc(%ebp)
8fa16e:	eb 08                	jmp    0x8fa178
8fa170:	8b 45 18             	mov    0x18(%ebp),%eax
8fa173:	2b c1                	sub    %ecx,%eax
8fa175:	89 45 10             	mov    %eax,0x10(%ebp)
8fa178:	57                   	push   %edi
8fa179:	68 b0 e9 d5 00       	push   $0xd5e9b0
8fa17e:	e8 87 be b0 ff       	call   0x40600a
8fa183:	8b f8                	mov    %eax,%edi
8fa185:	59                   	pop    %ecx
8fa186:	59                   	pop    %ecx
8fa187:	85 ff                	test   %edi,%edi
8fa189:	0f 84 dd 00 00 00    	je     0x8fa26c
8fa18f:	85 f6                	test   %esi,%esi
8fa191:	74 6a                	je     0x8fa1fd
8fa193:	83 3d d0 d2 d7 00 00 	cmpl   $0x0,0xd7d2d0
8fa19a:	74 1a                	je     0x8fa1b6
8fa19c:	8b 07                	mov    (%edi),%eax
8fa19e:	8b b0 54 03 00 00    	mov    0x354(%eax),%esi
8fa1a4:	8b ce                	mov    %esi,%ecx
8fa1a6:	e8 ba 24 b3 ff       	call   0x42c665
8fa1ab:	8b cf                	mov    %edi,%ecx
8fa1ad:	ff d6                	call   *%esi
8fa1af:	8b 75 1c             	mov    0x1c(%ebp),%esi
8fa1b2:	8b d8                	mov    %eax,%ebx
8fa1b4:	eb 0e                	jmp    0x8fa1c4
8fa1b6:	8d 45 e8             	lea    -0x18(%ebp),%eax
8fa1b9:	8b cf                	mov    %edi,%ecx
8fa1bb:	50                   	push   %eax
8fa1bc:	e8 5e f4 b0 ff       	call   0x40961f
8fa1c1:	8b 58 04             	mov    0x4(%eax),%ebx
8fa1c4:	8d 45 e8             	lea    -0x18(%ebp),%eax
8fa1c7:	8b cf                	mov    %edi,%ecx
8fa1c9:	50                   	push   %eax
8fa1ca:	e8 d7 e5 b0 ff       	call   0x4087a6
8fa1cf:	8b cb                	mov    %ebx,%ecx
8fa1d1:	2b 48 04             	sub    0x4(%eax),%ecx
8fa1d4:	8b c1                	mov    %ecx,%eax
8fa1d6:	99                   	cltd
8fa1d7:	2b c2                	sub    %edx,%eax
8fa1d9:	d1 f8                	sar    $1,%eax
8fa1db:	79 04                	jns    0x8fa1e1
8fa1dd:	33 c0                	xor    %eax,%eax
8fa1df:	eb 15                	jmp    0x8fa1f6
8fa1e1:	8d 45 dc             	lea    -0x24(%ebp),%eax
8fa1e4:	8b cf                	mov    %edi,%ecx
8fa1e6:	50                   	push   %eax
8fa1e7:	e8 ba e5 b0 ff       	call   0x4087a6
8fa1ec:	2b 58 04             	sub    0x4(%eax),%ebx
8fa1ef:	8b c3                	mov    %ebx,%eax
8fa1f1:	99                   	cltd
8fa1f2:	2b c2                	sub    %edx,%eax
8fa1f4:	d1 f8                	sar    $1,%eax
8fa1f6:	f7 d8                	neg    %eax
8fa1f8:	50                   	push   %eax
8fa1f9:	6a 00                	push   $0x0
8fa1fb:	eb 65                	jmp    0x8fa262
8fa1fd:	83 3d d0 d2 d7 00 00 	cmpl   $0x0,0xd7d2d0
8fa204:	74 1a                	je     0x8fa220
8fa206:	8b 07                	mov    (%edi),%eax
8fa208:	8b b0 58 03 00 00    	mov    0x358(%eax),%esi
8fa20e:	8b ce                	mov    %esi,%ecx
8fa210:	e8 50 24 b3 ff       	call   0x42c665
8fa215:	8b cf                	mov    %edi,%ecx
8fa217:	ff d6                	call   *%esi
8fa219:	8b 75 1c             	mov    0x1c(%ebp),%esi
8fa21c:	8b d8                	mov    %eax,%ebx
8fa21e:	eb 0d                	jmp    0x8fa22d
8fa220:	8d 45 dc             	lea    -0x24(%ebp),%eax
8fa223:	8b cf                	mov    %edi,%ecx
8fa225:	50                   	push   %eax
8fa226:	e8 f4 f3 b0 ff       	call   0x40961f
8fa22b:	8b 18                	mov    (%eax),%ebx
8fa22d:	8d 45 dc             	lea    -0x24(%ebp),%eax
8fa230:	8b cf                	mov    %edi,%ecx
8fa232:	50                   	push   %eax
8fa233:	e8 6e e5 b0 ff       	call   0x4087a6
8fa238:	8b cb                	mov    %ebx,%ecx
8fa23a:	2b 08                	sub    (%eax),%ecx
8fa23c:	8b c1                	mov    %ecx,%eax
8fa23e:	99                   	cltd
8fa23f:	2b c2                	sub    %edx,%eax
8fa241:	d1 f8                	sar    $1,%eax
8fa243:	79 04                	jns    0x8fa249
8fa245:	33 c0                	xor    %eax,%eax
8fa247:	eb 14                	jmp    0x8fa25d
8fa249:	8d 45 e8             	lea    -0x18(%ebp),%eax
8fa24c:	8b cf                	mov    %edi,%ecx
8fa24e:	50                   	push   %eax
8fa24f:	e8 52 e5 b0 ff       	call   0x4087a6
8fa254:	2b 18                	sub    (%eax),%ebx
8fa256:	8b c3                	mov    %ebx,%eax
8fa258:	99                   	cltd
8fa259:	2b c2                	sub    %edx,%eax
8fa25b:	d1 f8                	sar    $1,%eax
8fa25d:	6a 00                	push   $0x0
8fa25f:	f7 d8                	neg    %eax
8fa261:	50                   	push   %eax
8fa262:	8d 45 0c             	lea    0xc(%ebp),%eax
8fa265:	50                   	push   %eax
8fa266:	ff 15 ec 3d d8 00    	call   *0xd83dec
8fa26c:	8b 5d 14             	mov    0x14(%ebp),%ebx
8fa26f:	85 f6                	test   %esi,%esi
8fa271:	74 14                	je     0x8fa287
8fa273:	8b 45 18             	mov    0x18(%ebp),%eax
8fa276:	2b 45 10             	sub    0x10(%ebp),%eax
8fa279:	2b 45 f8             	sub    -0x8(%ebp),%eax
8fa27c:	99                   	cltd
8fa27d:	f7 7d f8             	idivl  -0x8(%ebp)
8fa280:	8b f8                	mov    %eax,%edi
8fa282:	89 7d ec             	mov    %edi,-0x14(%ebp)
8fa285:	eb 11                	jmp    0x8fa298
8fa287:	8b c3                	mov    %ebx,%eax
8fa289:	2b 45 0c             	sub    0xc(%ebp),%eax
8fa28c:	2b 45 f4             	sub    -0xc(%ebp),%eax
8fa28f:	99                   	cltd
8fa290:	f7 7d f4             	idivl  -0xc(%ebp)
8fa293:	8b f8                	mov    %eax,%edi
8fa295:	89 45 ec             	mov    %eax,-0x14(%ebp)
8fa298:	8b cf                	mov    %edi,%ecx
8fa29a:	85 f6                	test   %esi,%esi
8fa29c:	74 11                	je     0x8fa2af
8fa29e:	0f af 4d f8          	imul   -0x8(%ebp),%ecx
8fa2a2:	8b 45 18             	mov    0x18(%ebp),%eax
8fa2a5:	2b c1                	sub    %ecx,%eax
8fa2a7:	8b 4d 0c             	mov    0xc(%ebp),%ecx
8fa2aa:	2b 45 10             	sub    0x10(%ebp),%eax
8fa2ad:	eb 0d                	jmp    0x8fa2bc
8fa2af:	0f af 4d f4          	imul   -0xc(%ebp),%ecx
8fa2b3:	2b d9                	sub    %ecx,%ebx
8fa2b5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
8fa2b8:	2b d9                	sub    %ecx,%ebx
8fa2ba:	8b c3                	mov    %ebx,%eax
8fa2bc:	99                   	cltd
8fa2bd:	2b c2                	sub    %edx,%eax
8fa2bf:	8b d8                	mov    %eax,%ebx
8fa2c1:	d1 fb                	sar    $1,%ebx
8fa2c3:	85 ff                	test   %edi,%edi
8fa2c5:	0f 8e 9f 00 00 00    	jle    0x8fa36a
8fa2cb:	33 c0                	xor    %eax,%eax
8fa2cd:	89 45 d4             	mov    %eax,-0x2c(%ebp)
8fa2d0:	89 45 d8             	mov    %eax,-0x28(%ebp)
8fa2d3:	89 45 dc             	mov    %eax,-0x24(%ebp)
8fa2d6:	89 45 e0             	mov    %eax,-0x20(%ebp)
8fa2d9:	8b 45 f0             	mov    -0x10(%ebp),%eax
8fa2dc:	05 30 02 00 00       	add    $0x230,%eax
8fa2e1:	89 45 f0             	mov    %eax,-0x10(%ebp)
8fa2e4:	8b 55 10             	mov    0x10(%ebp),%edx
8fa2e7:	85 f6                	test   %esi,%esi
8fa2e9:	75 06                	jne    0x8fa2f1
8fa2eb:	03 cb                	add    %ebx,%ecx
8fa2ed:	85 f6                	test   %esi,%esi
8fa2ef:	74 02                	je     0x8fa2f3
8fa2f1:	03 d3                	add    %ebx,%edx
8fa2f3:	8b 45 f4             	mov    -0xc(%ebp),%eax
8fa2f6:	8d 75 d4             	lea    -0x2c(%ebp),%esi
8fa2f9:	68 ff 00 00 00       	push   $0xff
8fa2fe:	83 ec 10             	sub    $0x10,%esp
8fa301:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
8fa304:	8b fc                	mov    %esp,%edi
8fa306:	89 55 c8             	mov    %edx,-0x38(%ebp)
8fa309:	03 c1                	add    %ecx,%eax
8fa30b:	8b 4d f0             	mov    -0x10(%ebp),%ecx
8fa30e:	89 45 cc             	mov    %eax,-0x34(%ebp)
8fa311:	8b 45 f8             	mov    -0x8(%ebp),%eax
8fa314:	a5                   	movsl  %ds:(%esi),%es:(%edi)
8fa315:	03 c2                	add    %edx,%eax
8fa317:	89 45 d0             	mov    %eax,-0x30(%ebp)
8fa31a:	33 c0                	xor    %eax,%eax
8fa31c:	50                   	push   %eax
8fa31d:	50                   	push   %eax
8fa31e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
8fa31f:	50                   	push   %eax
8fa320:	83 ec 10             	sub    $0x10,%esp