61f04f:	8b 5d f8             	mov    -0x8(%ebp),%ebx
61f052:	43                   	inc    %ebx
61f053:	89 5d f4             	mov    %ebx,-0xc(%ebp)
61f056:	8b 1a                	mov    (%edx),%ebx
61f058:	8b f0                	mov    %eax,%esi
61f05a:	81 f9 ff ff ff 1f    	cmp    $0x1fffffff,%ecx
61f060:	74 2c                	je     0x61f08e
61f062:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f065:	8b 40 14             	mov    0x14(%eax),%eax
61f068:	8b d1                	mov    %ecx,%edx
61f06a:	e8 15 92 e0 ff       	call   0x428284
61f06f:	8b 45 f8             	mov    -0x8(%ebp),%eax
61f072:	50                   	push   %eax
61f073:	8d 45 e4             	lea    -0x1c(%ebp),%eax
61f076:	50                   	push   %eax
61f077:	8b 4d f4             	mov    -0xc(%ebp),%ecx
61f07a:	8b d6                	mov    %esi,%edx
61f07c:	8b c3                	mov    %ebx,%eax
61f07e:	e8 19 b6 df ff       	call   0x41a69c
61f083:	8d 55 e4             	lea    -0x1c(%ebp),%edx
61f086:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f089:	e8 6e 96 e0 ff       	call   0x4286fc
61f08e:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f091:	8b 40 10             	mov    0x10(%eax),%eax
61f094:	8b 55 0c             	mov    0xc(%ebp),%edx
61f097:	e8 e8 8e e0 ff       	call   0x427f84
61f09c:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
61f09f:	8b 45 f4             	mov    -0xc(%ebp),%eax
61f0a2:	d1 f8                	sar    $1,%eax
61f0a4:	79 03                	jns    0x61f0a9
61f0a6:	83 d0 00             	adc    $0x0,%eax
61f0a9:	03 c3                	add    %ebx,%eax
61f0ab:	48                   	dec    %eax
61f0ac:	8b d6                	mov    %esi,%edx
61f0ae:	e8 99 b5 df ff       	call   0x41a64c
61f0b3:	8b 45 c4             	mov    -0x3c(%ebp),%eax
61f0b6:	89 45 cc             	mov    %eax,-0x34(%ebp)
61f0b9:	8b 45 c8             	mov    -0x38(%ebp),%eax
61f0bc:	89 45 d0             	mov    %eax,-0x30(%ebp)
61f0bf:	8d 4d bc             	lea    -0x44(%ebp),%ecx
61f0c2:	8b 55 f8             	mov    -0x8(%ebp),%edx
61f0c5:	03 d6                	add    %esi,%edx
61f0c7:	83 ea 02             	sub    $0x2,%edx
61f0ca:	8b c3                	mov    %ebx,%eax
61f0cc:	e8 7b b5 df ff       	call   0x41a64c
61f0d1:	8b 45 bc             	mov    -0x44(%ebp),%eax
61f0d4:	89 45 d4             	mov    %eax,-0x2c(%ebp)
61f0d7:	8b 45 c0             	mov    -0x40(%ebp),%eax
61f0da:	89 45 d8             	mov    %eax,-0x28(%ebp)
61f0dd:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
61f0e0:	8b 7d f8             	mov    -0x8(%ebp),%edi
61f0e3:	03 fe                	add    %esi,%edi
61f0e5:	4f                   	dec    %edi
61f0e6:	8b d7                	mov    %edi,%edx
61f0e8:	8b c3                	mov    %ebx,%eax
61f0ea:	e8 5d b5 df ff       	call   0x41a64c
61f0ef:	8b 45 b4             	mov    -0x4c(%ebp),%eax
61f0f2:	89 45 dc             	mov    %eax,-0x24(%ebp)
61f0f5:	8b 45 b8             	mov    -0x48(%ebp),%eax
61f0f8:	89 45 e0             	mov    %eax,-0x20(%ebp)
61f0fb:	8d 55 cc             	lea    -0x34(%ebp),%edx
61f0fe:	b9 02 00 00 00       	mov    $0x2,%ecx
61f103:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f106:	e8 2d 97 e0 ff       	call   0x428838
61f10b:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f10e:	8b 40 10             	mov    0x10(%eax),%eax
61f111:	8b 55 08             	mov    0x8(%ebp),%edx
61f114:	e8 6b 8e e0 ff       	call   0x427f84
61f119:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
61f11c:	8b d7                	mov    %edi,%edx
61f11e:	8b c3                	mov    %ebx,%eax
61f120:	e8 27 b5 df ff       	call   0x41a64c
61f125:	8b 45 c4             	mov    -0x3c(%ebp),%eax
61f128:	89 45 cc             	mov    %eax,-0x34(%ebp)
61f12b:	8b 45 c8             	mov    -0x38(%ebp),%eax
61f12e:	89 45 d0             	mov    %eax,-0x30(%ebp)
61f131:	8d 4d bc             	lea    -0x44(%ebp),%ecx
61f134:	8b d7                	mov    %edi,%edx
61f136:	8b 45 f4             	mov    -0xc(%ebp),%eax
61f139:	03 c3                	add    %ebx,%eax
61f13b:	48                   	dec    %eax
61f13c:	e8 0b b5 df ff       	call   0x41a64c
61f141:	8b 45 bc             	mov    -0x44(%ebp),%eax
61f144:	89 45 d4             	mov    %eax,-0x2c(%ebp)
61f147:	8b 45 c0             	mov    -0x40(%ebp),%eax
61f14a:	89 45 d8             	mov    %eax,-0x28(%ebp)
61f14d:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
61f150:	8b d6                	mov    %esi,%edx
61f152:	4a                   	dec    %edx
61f153:	8b 45 f4             	mov    -0xc(%ebp),%eax
61f156:	48                   	dec    %eax
61f157:	d1 f8                	sar    $1,%eax
61f159:	79 03                	jns    0x61f15e
61f15b:	83 d0 00             	adc    $0x0,%eax
61f15e:	03 c3                	add    %ebx,%eax
61f160:	40                   	inc    %eax
61f161:	e8 e6 b4 df ff       	call   0x41a64c
61f166:	8b 45 b4             	mov    -0x4c(%ebp),%eax
61f169:	89 45 dc             	mov    %eax,-0x24(%ebp)
61f16c:	8b 45 b8             	mov    -0x48(%ebp),%eax
61f16f:	89 45 e0             	mov    %eax,-0x20(%ebp)
61f172:	8d 55 cc             	lea    -0x34(%ebp),%edx
61f175:	b9 02 00 00 00       	mov    $0x2,%ecx
61f17a:	8b 45 fc             	mov    -0x4(%ebp),%eax
61f17d:	e8 b6 96 e0 ff       	call   0x428838
61f182:	5f                   	pop    %edi
61f183:	5e                   	pop    %esi
61f184:	5b                   	pop    %ebx
61f185:	8b e5                	mov    %ebp,%esp
61f187:	5d                   	pop    %ebp
61f188:	c2 08 00             	ret    $0x8
61f18b:	90                   	nop
61f18c:	55                   	push   %ebp
61f18d:	8b ec                	mov    %esp,%ebp
61f18f:	51                   	push   %ecx
61f190:	53                   	push   %ebx
61f191:	56                   	push   %esi
61f192:	84 d2                	test   %dl,%dl
61f194:	74 08                	je     0x61f19e
61f196:	83 c4 f0             	add    $0xfffffff0,%esp
61f199:	e8 3e 4c de ff       	call   0x403ddc
61f19e:	8b f1                	mov    %ecx,%esi
61f1a0:	88 55 ff             	mov    %dl,-0x1(%ebp)
61f1a3:	8b d8                	mov    %eax,%ebx
61f1a5:	33 d2                	xor    %edx,%edx
61f1a7:	8b c3                	mov    %ebx,%eax
61f1a9:	e8 9a 48 de ff       	call   0x403a48
61f1ae:	8b 4d 0c             	mov    0xc(%ebp),%ecx
61f1b1:	8b d6                	mov    %esi,%edx
61f1b3:	8b c3                	mov    %ebx,%eax
61f1b5:	8b 30                	mov    (%eax),%esi
61f1b7:	ff 16                	call   *(%esi)
61f1b9:	8b 45 08             	mov    0x8(%ebp),%eax
61f1bc:	89 43 04             	mov    %eax,0x4(%ebx)
61f1bf:	8b c3                	mov    %ebx,%eax
61f1c1:	8b 10                	mov    (%eax),%edx
61f1c3:	ff 52 08             	call   *0x8(%edx)
61f1c6:	89 43 10             	mov    %eax,0x10(%ebx)
61f1c9:	8b c3                	mov    %ebx,%eax
61f1cb:	8b 10                	mov    (%eax),%edx
61f1cd:	ff 52 04             	call   *0x4(%edx)
61f1d0:	89 43 08             	mov    %eax,0x8(%ebx)
61f1d3:	8b c3                	mov    %ebx,%eax
61f1d5:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
61f1d9:	74 0f                	je     0x61f1ea
61f1db:	e8 54 4c de ff       	call   0x403e34
61f1e0:	64 8f 05 00 00 00 00 	pop    %fs:0x0
61f1e7:	83 c4 0c             	add    $0xc,%esp
61f1ea:	8b c3                	mov    %ebx,%eax
61f1ec:	5e                   	pop    %esi
61f1ed:	5b                   	pop    %ebx
61f1ee:	59                   	pop    %ecx
61f1ef:	5d                   	pop    %ebp
61f1f0:	c2 08 00             	ret    $0x8
61f1f3:	90                   	nop
61f1f4:	53                   	push   %ebx
61f1f5:	56                   	push   %esi
61f1f6:	e8 49 4c de ff       	call   0x403e44
61f1fb:	8b da                	mov    %edx,%ebx
61f1fd:	8b f0                	mov    %eax,%esi
61f1ff:	8b 46 08             	mov    0x8(%esi),%eax
61f202:	e8 71 48 de ff       	call   0x403a78
61f207:	33 c0                	xor    %eax,%eax
61f209:	89 46 08             	mov    %eax,0x8(%esi)
61f20c:	8b 46 10             	mov    0x10(%esi),%eax
61f20f:	e8 64 48 de ff       	call   0x403a78
61f214:	33 c0                	xor    %eax,%eax
61f216:	89 46 10             	mov    %eax,0x10(%esi)
61f219:	8b 46 24             	mov    0x24(%esi),%eax
61f21c:	e8 57 48 de ff       	call   0x403a78
61f221:	33 c0                	xor    %eax,%eax
61f223:	89 46 24             	mov    %eax,0x24(%esi)
61f226:	8b d3                	mov    %ebx,%edx
61f228:	80 e2 fc             	and    $0xfc,%dl
61f22b:	8b c6                	mov    %esi,%eax
61f22d:	e8 36 48 de ff       	call   0x403a68
61f232:	84 db                	test   %bl,%bl
61f234:	7e 07                	jle    0x61f23d
61f236:	8b c6                	mov    %esi,%eax
61f238:	e8 ef 4b de ff       	call   0x403e2c
61f23d:	5e                   	pop    %esi
61f23e:	5b                   	pop    %ebx
61f23f:	c3                   	ret
61f240:	c6 40 0c 01          	movb   $0x1,0xc(%eax)
61f244:	c3                   	ret
61f245:	8d 40 00             	lea    0x0(%eax),%eax
61f248:	c6 40 14 01          	movb   $0x1,0x14(%eax)
61f24c:	c3                   	ret
61f24d:	8d 40 00             	lea    0x0(%eax),%eax
61f250:	8b 40 18             	mov    0x18(%eax),%eax
61f253:	8b 40 0c             	mov    0xc(%eax),%eax
61f256:	48                   	dec    %eax
61f257:	74 0f                	je     0x61f268
61f259:	48                   	dec    %eax
61f25a:	74 0f                	je     0x61f26b
61f25c:	2d ff ff 00 00       	sub    $0xffff,%eax
61f261:	74 0b                	je     0x61f26e
61f263:	48                   	dec    %eax
61f264:	74 0b                	je     0x61f271
61f266:	eb 0c                	jmp    0x61f274
61f268:	b0 01                	mov    $0x1,%al
61f26a:	c3                   	ret
61f26b:	b0 02                	mov    $0x2,%al
61f26d:	c3                   	ret
61f26e:	b0 04                	mov    $0x4,%al
61f270:	c3                   	ret
61f271:	b0 05                	mov    $0x5,%al
61f273:	c3                   	ret
61f274:	33 c0                	xor    %eax,%eax
61f276:	c3                   	ret
61f277:	90                   	nop
61f278:	53                   	push   %ebx
61f279:	8b d8                	mov    %eax,%ebx
61f27b:	89 53 18             	mov    %edx,0x18(%ebx)
61f27e:	89 4b 1c             	mov    %ecx,0x1c(%ebx)
61f281:	c6 43 20 00          	movb   $0x0,0x20(%ebx)
61f285:	8b 43 10             	mov    0x10(%ebx),%eax
61f288:	e8 eb 47 de ff       	call   0x403a78
61f28d:	33 c0                	xor    %eax,%eax
61f28f:	89 43 10             	mov    %eax,0x10(%ebx)
61f292:	8b 43 08             	mov    0x8(%ebx),%eax
61f295:	e8 de 47 de ff       	call   0x403a78
61f29a:	33 c0                	xor    %eax,%eax
61f29c:	89 43 08             	mov    %eax,0x8(%ebx)
61f29f:	5b                   	pop    %ebx
61f2a0:	c3                   	ret
61f2a1:	8d 40 00             	lea    0x0(%eax),%eax
61f2a4:	53                   	push   %ebx
61f2a5:	56                   	push   %esi
61f2a6:	8b d8                	mov    %eax,%ebx
61f2a8:	b2 01                	mov    $0x1,%dl
61f2aa:	a1 10 61 42 00       	mov    0x426110,%eax
61f2af:	e8 10 86 e0 ff       	call   0x4278c4
61f2b4:	8b f0                	mov    %eax,%esi
61f2b6:	8b 53 04             	mov    0x4(%ebx),%edx
61f2b9:	8b c6                	mov    %esi,%eax
61f2bb:	8b 08                	mov    (%eax),%ecx
61f2bd:	ff 51 08             	call   *0x8(%ecx)
61f2c0:	8b 43 18             	mov    0x18(%ebx),%eax
61f2c3:	8b 40 10             	mov    0x10(%eax),%eax
61f2c6:	50                   	push   %eax
61f2c7:	e8 5c 83 de ff       	call   0x407628
61f2cc:	8b d0                	mov    %eax,%edx
61f2ce:	8b c6                	mov    %esi,%eax
61f2d0:	e8 c3 87 e0 ff       	call   0x427a98
61f2d5:	89 5e 0c             	mov    %ebx,0xc(%esi)
61f2d8:	c7 46 08 40 f2 61 00 	movl   $0x61f240,0x8(%esi)
61f2df:	8b c6                	mov    %esi,%eax
61f2e1:	5e                   	pop    %esi
61f2e2:	5b                   	pop    %ebx
61f2e3:	c3                   	ret
61f2e4:	53                   	push   %ebx
61f2e5:	56                   	push   %esi
61f2e6:	8b f0                	mov    %eax,%esi
61f2e8:	b2 01                	mov    $0x1,%dl
61f2ea:	a1 8c 63 42 00       	mov    0x42638c,%eax
61f2ef:	e8 e8 8d e0 ff       	call   0x4280dc
61f2f4:	8b d8                	mov    %eax,%ebx
61f2f6:	33 d2                	xor    %edx,%edx
61f2f8:	8b c3                	mov    %ebx,%eax
61f2fa:	e8 a1 90 e0 ff       	call   0x4283a0
61f2ff:	8b 46 18             	mov    0x18(%esi),%eax
61f302:	8b 40 10             	mov    0x10(%eax),%eax
61f305:	50                   	push   %eax
61f306:	e8 65 82 de ff       	call   0x407570
61f30b:	8b d0                	mov    %eax,%edx
61f30d:	8b c3                	mov    %ebx,%eax
61f30f:	e8 70 8f e0 ff       	call   0x428284
61f314:	89 73 0c             	mov    %esi,0xc(%ebx)
61f317:	c7 43 08 48 f2 61 00 	movl   $0x61f248,0x8(%ebx)
61f31e:	8b c3                	mov    %ebx,%eax
61f320:	5e                   	pop    %esi
61f321:	5b                   	pop    %ebx
61f322:	c3                   	ret
61f323:	90                   	nop
61f324:	55                   	push   %ebp
61f325:	8b ec                	mov    %esp,%ebp
61f327:	53                   	push   %ebx
61f328:	56                   	push   %esi
61f329:	84 d2                	test   %dl,%dl
61f32b:	74 08                	je     0x61f335
61f32d:	83 c4 f0             	add    $0xfffffff0,%esp
61f330:	e8 a7 4a de ff       	call   0x403ddc
61f335:	8b da                	mov    %edx,%ebx
61f337:	8b f0                	mov    %eax,%esi
61f339:	8b 45 0c             	mov    0xc(%ebp),%eax
61f33c:	50                   	push   %eax
61f33d:	8b 45 08             	mov    0x8(%ebp),%eax
61f340:	50                   	push   %eax
61f341:	33 d2                	xor    %edx,%edx
61f343:	8b c6                	mov    %esi,%eax
61f345:	e8 42 fe ff ff       	call   0x61f18c
61f34a:	8b c6                	mov    %esi,%eax
61f34c:	84 db                	test   %bl,%bl
61f34e:	74 0f                	je     0x61f35f
61f350:	e8 df 4a de ff       	call   0x403e34
61f355:	64 8f 05 00 00 00 00 	pop    %fs:0x0
61f35c:	83 c4 0c             	add    $0xc,%esp
61f35f:	8b c6                	mov    %esi,%eax
61f361:	5e                   	pop    %esi
61f362:	5b                   	pop    %ebx
61f363:	5d                   	pop    %ebp
61f364:	c2 08 00             	ret    $0x8
61f367:	90                   	nop
61f368:	8b 40 18             	mov    0x18(%eax),%eax
61f36b:	c3                   	ret
61f36c:	53                   	push   %ebx
61f36d:	56                   	push   %esi
61f36e:	8b d8                	mov    %eax,%ebx
61f370:	80 7b 20 00          	cmpb   $0x0,0x20(%ebx)
61f374:	75 07                	jne    0x61f37d
61f376:	8b 43 1c             	mov    0x1c(%ebx),%eax
61f379:	33 d2                	xor    %edx,%edx
61f37b:	89 10                	mov    %edx,(%eax)
61f37d:	8b c3                	mov    %ebx,%eax
61f37f:	e8 cc fe ff ff       	call   0x61f250
61f384:	fe c8                	dec    %al
61f386:	74 09                	je     0x61f391
61f388:	2c 03                	sub    $0x3,%al
61f38a:	74 25                	je     0x61f3b1
61f38c:	e9 b8 00 00 00       	jmp    0x61f449
61f391:	80 7b 20 00          	cmpb   $0x0,0x20(%ebx)
61f395:	0f 85 ae 00 00 00    	jne    0x61f449
61f39b:	33 c0                	xor    %eax,%eax
61f39d:	8a 43 15             	mov    0x15(%ebx),%al
61f3a0:	8b 04 85 cc 57 6a 00 	mov    0x6a57cc(,%eax,4),%eax
61f3a7:	8b 53 1c             	mov    0x1c(%ebx),%edx
61f3aa:	09 02                	or     %eax,(%edx)
61f3ac:	e9 98 00 00 00       	jmp    0x61f449
61f3b1:	80 7b 16 00          	cmpb   $0x0,0x16(%ebx)
61f3b5:	74 13                	je     0x61f3ca
61f3b7:	80 7b 20 00          	cmpb   $0x0,0x20(%ebx)
61f3bb:	0f 85 88 00 00 00    	jne    0x61f449
61f3c1:	8b 43 1c             	mov    0x1c(%ebx),%eax
61f3c4:	83 08 04             	orl    $0x4,(%eax)
61f3c7:	5e                   	pop    %esi
61f3c8:	5b                   	pop    %ebx
61f3c9:	c3                   	ret
61f3ca:	80 7b 0c 00          	cmpb   $0x0,0xc(%ebx)
61f3ce:	74 54                	je     0x61f424
61f3d0:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
61f3d4:	74 4e                	je     0x61f424
61f3d6:	8b 43 08             	mov    0x8(%ebx),%eax
61f3d9:	e8 ce 86 e0 ff       	call   0x427aac
61f3de:	8b f0                	mov    %eax,%esi
61f3e0:	6a 06                	push   $0x6
61f3e2:	8b 43 18             	mov    0x18(%ebx),%eax
61f3e5:	8b 40 10             	mov    0x10(%eax),%eax
61f3e8:	50                   	push   %eax
61f3e9:	e8 a2 81 de ff       	call   0x407590