52801d:	8b 43 1c             	mov    0x1c(%ebx),%eax
528020:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
528026:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
52802a:	75 07                	jne    0x528033
52802c:	8b c6                	mov    %esi,%eax
52802e:	e9 b9 02 00 00       	jmp    0x5282ec
528033:	ff 4b 04             	decl   0x4(%ebx)
528036:	ff 43 08             	incl   0x8(%ebx)
528039:	33 d2                	xor    %edx,%edx
52803b:	8b 03                	mov    (%ebx),%eax
52803d:	8b f7                	mov    %edi,%esi
52803f:	ff 03                	incl   (%ebx)
528041:	8b 6b 1c             	mov    0x1c(%ebx),%ebp
528044:	8a 08                	mov    (%eax),%cl
528046:	81 e1 ff 00 00 00    	and    $0xff,%ecx
52804c:	8b 45 04             	mov    0x4(%ebp),%eax
52804f:	c1 e0 08             	shl    $0x8,%eax
528052:	51                   	push   %ecx
528053:	03 c1                	add    %ecx,%eax
528055:	b9 1f 00 00 00       	mov    $0x1f,%ecx
52805a:	f7 f1                	div    %ecx
52805c:	59                   	pop    %ecx
52805d:	85 d2                	test   %edx,%edx
52805f:	74 1d                	je     0x52807e
528061:	c7 45 00 0d 00 00 00 	movl   $0xd,0x0(%ebp)
528068:	c7 43 18 91 7c 69 00 	movl   $0x697c91,0x18(%ebx)
52806f:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
528072:	c7 41 04 05 00 00 00 	movl   $0x5,0x4(%ecx)
528079:	e9 dc fe ff ff       	jmp    0x527f5a
52807e:	f6 c1 20             	test   $0x20,%cl
528081:	75 0e                	jne    0x528091
528083:	8b 43 1c             	mov    0x1c(%ebx),%eax
528086:	c7 00 07 00 00 00    	movl   $0x7,(%eax)
52808c:	e9 c9 fe ff ff       	jmp    0x527f5a
528091:	8b 53 1c             	mov    0x1c(%ebx),%edx
528094:	c7 02 02 00 00 00    	movl   $0x2,(%edx)
52809a:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
52809e:	75 07                	jne    0x5280a7
5280a0:	8b c6                	mov    %esi,%eax
5280a2:	e9 45 02 00 00       	jmp    0x5282ec
5280a7:	8b f7                	mov    %edi,%esi
5280a9:	ff 4b 04             	decl   0x4(%ebx)
5280ac:	ff 43 08             	incl   0x8(%ebx)
5280af:	8b 13                	mov    (%ebx),%edx
5280b1:	ff 03                	incl   (%ebx)
5280b3:	8a 0a                	mov    (%edx),%cl
5280b5:	33 d2                	xor    %edx,%edx
5280b7:	8a d1                	mov    %cl,%dl
5280b9:	c1 e2 18             	shl    $0x18,%edx
5280bc:	8b 43 1c             	mov    0x1c(%ebx),%eax
5280bf:	89 50 08             	mov    %edx,0x8(%eax)
5280c2:	c7 00 03 00 00 00    	movl   $0x3,(%eax)
5280c8:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
5280cc:	75 07                	jne    0x5280d5
5280ce:	8b c6                	mov    %esi,%eax
5280d0:	e9 17 02 00 00       	jmp    0x5282ec
5280d5:	ff 4b 04             	decl   0x4(%ebx)
5280d8:	ff 43 08             	incl   0x8(%ebx)
5280db:	33 c9                	xor    %ecx,%ecx
5280dd:	8b 03                	mov    (%ebx),%eax
5280df:	8b f7                	mov    %edi,%esi
5280e1:	ff 03                	incl   (%ebx)
5280e3:	8a 10                	mov    (%eax),%dl
5280e5:	8b 43 1c             	mov    0x1c(%ebx),%eax
5280e8:	8a ca                	mov    %dl,%cl
5280ea:	c1 e1 10             	shl    $0x10,%ecx
5280ed:	01 48 08             	add    %ecx,0x8(%eax)
5280f0:	8b 53 1c             	mov    0x1c(%ebx),%edx
5280f3:	c7 02 04 00 00 00    	movl   $0x4,(%edx)
5280f9:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
5280fd:	75 07                	jne    0x528106
5280ff:	8b c6                	mov    %esi,%eax
528101:	e9 e6 01 00 00       	jmp    0x5282ec
528106:	ff 4b 04             	decl   0x4(%ebx)
528109:	ff 43 08             	incl   0x8(%ebx)
52810c:	33 c9                	xor    %ecx,%ecx
52810e:	8b 03                	mov    (%ebx),%eax
528110:	8b f7                	mov    %edi,%esi
528112:	ff 03                	incl   (%ebx)
528114:	8a 10                	mov    (%eax),%dl
528116:	8b 43 1c             	mov    0x1c(%ebx),%eax
528119:	8a ca                	mov    %dl,%cl
52811b:	c1 e1 08             	shl    $0x8,%ecx
52811e:	01 48 08             	add    %ecx,0x8(%eax)
528121:	8b 53 1c             	mov    0x1c(%ebx),%edx
528124:	c7 02 05 00 00 00    	movl   $0x5,(%edx)
52812a:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
52812e:	75 07                	jne    0x528137
528130:	8b c6                	mov    %esi,%eax
528132:	e9 b5 01 00 00       	jmp    0x5282ec
528137:	ff 4b 04             	decl   0x4(%ebx)
52813a:	ff 43 08             	incl   0x8(%ebx)
52813d:	33 c0                	xor    %eax,%eax
52813f:	8b 13                	mov    (%ebx),%edx
528141:	ff 03                	incl   (%ebx)
528143:	8a 0a                	mov    (%edx),%cl
528145:	8b 53 1c             	mov    0x1c(%ebx),%edx
528148:	8a c1                	mov    %cl,%al
52814a:	01 42 08             	add    %eax,0x8(%edx)
52814d:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
528150:	8b 41 08             	mov    0x8(%ecx),%eax
528153:	89 43 30             	mov    %eax,0x30(%ebx)
528156:	b8 02 00 00 00       	mov    $0x2,%eax
52815b:	8b 53 1c             	mov    0x1c(%ebx),%edx
52815e:	c7 02 06 00 00 00    	movl   $0x6,(%edx)
528164:	e9 83 01 00 00       	jmp    0x5282ec
528169:	8b 53 1c             	mov    0x1c(%ebx),%edx
52816c:	c7 02 0d 00 00 00    	movl   $0xd,(%edx)
528172:	c7 43 18 a8 7c 69 00 	movl   $0x697ca8,0x18(%ebx)
528179:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
52817c:	33 c0                	xor    %eax,%eax
52817e:	89 41 04             	mov    %eax,0x4(%ecx)
528181:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
528186:	e9 61 01 00 00       	jmp    0x5282ec
52818b:	8b 53 1c             	mov    0x1c(%ebx),%edx
52818e:	8b 42 14             	mov    0x14(%edx),%eax
528191:	8b ce                	mov    %esi,%ecx
528193:	8b d3                	mov    %ebx,%edx
528195:	e8 b6 03 00 00       	call   0x528550
52819a:	8b f0                	mov    %eax,%esi
52819c:	83 fe fd             	cmp    $0xfffffffd,%esi
52819f:	75 13                	jne    0x5281b4
5281a1:	8b 43 1c             	mov    0x1c(%ebx),%eax
5281a4:	c7 00 0d 00 00 00    	movl   $0xd,(%eax)
5281aa:	33 d2                	xor    %edx,%edx
5281ac:	89 50 04             	mov    %edx,0x4(%eax)
5281af:	e9 a6 fd ff ff       	jmp    0x527f5a
5281b4:	85 f6                	test   %esi,%esi
5281b6:	75 02                	jne    0x5281ba
5281b8:	8b f7                	mov    %edi,%esi
5281ba:	83 fe 01             	cmp    $0x1,%esi
5281bd:	74 07                	je     0x5281c6
5281bf:	8b c6                	mov    %esi,%eax
5281c1:	e9 26 01 00 00       	jmp    0x5282ec
5281c6:	8b f7                	mov    %edi,%esi
5281c8:	8b 43 1c             	mov    0x1c(%ebx),%eax
5281cb:	8b c8                	mov    %eax,%ecx
5281cd:	83 c1 04             	add    $0x4,%ecx
5281d0:	8b 40 14             	mov    0x14(%eax),%eax
5281d3:	8b d3                	mov    %ebx,%edx
5281d5:	e8 7a 02 00 00       	call   0x528454
5281da:	8b 43 1c             	mov    0x1c(%ebx),%eax
5281dd:	83 78 0c 00          	cmpl   $0x0,0xc(%eax)
5281e1:	74 0b                	je     0x5281ee
5281e3:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
5281e9:	e9 6c fd ff ff       	jmp    0x527f5a
5281ee:	8b 53 1c             	mov    0x1c(%ebx),%edx
5281f1:	c7 02 08 00 00 00    	movl   $0x8,(%edx)
5281f7:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
5281fb:	75 07                	jne    0x528204
5281fd:	8b c6                	mov    %esi,%eax
5281ff:	e9 e8 00 00 00       	jmp    0x5282ec
528204:	8b f7                	mov    %edi,%esi
528206:	ff 4b 04             	decl   0x4(%ebx)
528209:	ff 43 08             	incl   0x8(%ebx)
52820c:	8b 13                	mov    (%ebx),%edx
52820e:	ff 03                	incl   (%ebx)
528210:	8a 0a                	mov    (%edx),%cl
528212:	33 d2                	xor    %edx,%edx
528214:	8a d1                	mov    %cl,%dl
528216:	c1 e2 18             	shl    $0x18,%edx
528219:	8b 43 1c             	mov    0x1c(%ebx),%eax
52821c:	89 50 08             	mov    %edx,0x8(%eax)
52821f:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
528225:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
528229:	75 07                	jne    0x528232
52822b:	8b c6                	mov    %esi,%eax
52822d:	e9 ba 00 00 00       	jmp    0x5282ec
528232:	ff 4b 04             	decl   0x4(%ebx)
528235:	ff 43 08             	incl   0x8(%ebx)
528238:	33 c9                	xor    %ecx,%ecx
52823a:	8b 03                	mov    (%ebx),%eax
52823c:	8b f7                	mov    %edi,%esi
52823e:	ff 03                	incl   (%ebx)
528240:	8a 10                	mov    (%eax),%dl
528242:	8b 43 1c             	mov    0x1c(%ebx),%eax
528245:	8a ca                	mov    %dl,%cl
528247:	c1 e1 10             	shl    $0x10,%ecx
52824a:	01 48 08             	add    %ecx,0x8(%eax)
52824d:	8b 53 1c             	mov    0x1c(%ebx),%edx
528250:	c7 02 0a 00 00 00    	movl   $0xa,(%edx)
528256:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
52825a:	75 07                	jne    0x528263
52825c:	8b c6                	mov    %esi,%eax
52825e:	e9 89 00 00 00       	jmp    0x5282ec
528263:	ff 4b 04             	decl   0x4(%ebx)
528266:	ff 43 08             	incl   0x8(%ebx)
528269:	33 c9                	xor    %ecx,%ecx
52826b:	8b 03                	mov    (%ebx),%eax
52826d:	8b f7                	mov    %edi,%esi
52826f:	ff 03                	incl   (%ebx)
528271:	8a 10                	mov    (%eax),%dl
528273:	8b 43 1c             	mov    0x1c(%ebx),%eax
528276:	8a ca                	mov    %dl,%cl
528278:	c1 e1 08             	shl    $0x8,%ecx
52827b:	01 48 08             	add    %ecx,0x8(%eax)
52827e:	8b 53 1c             	mov    0x1c(%ebx),%edx
528281:	c7 02 0b 00 00 00    	movl   $0xb,(%edx)
528287:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
52828b:	75 04                	jne    0x528291
52828d:	8b c6                	mov    %esi,%eax
52828f:	eb 5b                	jmp    0x5282ec
528291:	ff 4b 04             	decl   0x4(%ebx)
528294:	ff 43 08             	incl   0x8(%ebx)
528297:	33 c9                	xor    %ecx,%ecx
528299:	8b 03                	mov    (%ebx),%eax
52829b:	8b f7                	mov    %edi,%esi
52829d:	ff 03                	incl   (%ebx)
52829f:	8a 10                	mov    (%eax),%dl
5282a1:	8b 43 1c             	mov    0x1c(%ebx),%eax
5282a4:	8a ca                	mov    %dl,%cl
5282a6:	01 48 08             	add    %ecx,0x8(%eax)
5282a9:	8b 43 1c             	mov    0x1c(%ebx),%eax
5282ac:	8b 50 04             	mov    0x4(%eax),%edx
5282af:	3b 50 08             	cmp    0x8(%eax),%edx
5282b2:	74 1c                	je     0x5282d0
5282b4:	c7 00 0d 00 00 00    	movl   $0xd,(%eax)
5282ba:	c7 43 18 b8 7c 69 00 	movl   $0x697cb8,0x18(%ebx)
5282c1:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
5282c4:	c7 41 04 05 00 00 00 	movl   $0x5,0x4(%ecx)
5282cb:	e9 8a fc ff ff       	jmp    0x527f5a
5282d0:	8b 43 1c             	mov    0x1c(%ebx),%eax
5282d3:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
5282d9:	b8 01 00 00 00       	mov    $0x1,%eax
5282de:	eb 0c                	jmp    0x5282ec
5282e0:	b8 fd ff ff ff       	mov    $0xfffffffd,%eax
5282e5:	eb 05                	jmp    0x5282ec
5282e7:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
5282ec:	5d                   	pop    %ebp
5282ed:	5f                   	pop    %edi
5282ee:	5e                   	pop    %esi
5282ef:	5b                   	pop    %ebx
5282f0:	c3                   	ret
5282f1:	90                   	nop
5282f2:	90                   	nop
5282f3:	90                   	nop
5282f4:	53                   	push   %ebx
5282f5:	56                   	push   %esi
5282f6:	57                   	push   %edi
5282f7:	55                   	push   %ebp
5282f8:	8b e9                	mov    %ecx,%ebp
5282fa:	8b fa                	mov    %edx,%edi
5282fc:	8b d8                	mov    %eax,%ebx
5282fe:	8b f5                	mov    %ebp,%esi
528300:	85 db                	test   %ebx,%ebx
528302:	74 0e                	je     0x528312
528304:	83 7b 1c 00          	cmpl   $0x0,0x1c(%ebx)
528308:	74 08                	je     0x528312
52830a:	8b 43 1c             	mov    0x1c(%ebx),%eax
52830d:	83 38 06             	cmpl   $0x6,(%eax)
528310:	74 07                	je     0x528319
528312:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
528317:	eb 5b                	jmp    0x528374
528319:	8b cd                	mov    %ebp,%ecx
52831b:	8b d7                	mov    %edi,%edx
52831d:	b8 01 00 00 00       	mov    $0x1,%eax
528322:	e8 85 43 00 00       	call   0x52c6ac
528327:	3b 43 30             	cmp    0x30(%ebx),%eax
52832a:	74 07                	je     0x528333
52832c:	b8 fd ff ff ff       	mov    $0xfffffffd,%eax
528331:	eb 41                	jmp    0x528374
528333:	c7 43 30 01 00 00 00 	movl   $0x1,0x30(%ebx)
52833a:	8b 43 1c             	mov    0x1c(%ebx),%eax
52833d:	8b 48 10             	mov    0x10(%eax),%ecx
528340:	ba 01 00 00 00       	mov    $0x1,%edx
528345:	d3 e2                	shl    %cl,%edx
528347:	3b f2                	cmp    %edx,%esi
528349:	72 12                	jb     0x52835d
52834b:	8b 53 1c             	mov    0x1c(%ebx),%edx
52834e:	8b 4a 10             	mov    0x10(%edx),%ecx
528351:	be 01 00 00 00       	mov    $0x1,%esi
528356:	d3 e6                	shl    %cl,%esi
528358:	4e                   	dec    %esi
528359:	2b ee                	sub    %esi,%ebp
52835b:	03 fd                	add    %ebp,%edi
52835d:	8b 40 14             	mov    0x14(%eax),%eax
528360:	8b ce                	mov    %esi,%ecx
528362:	8b d7                	mov    %edi,%edx
528364:	e8 ef 0e 00 00       	call   0x529258
528369:	8b 43 1c             	mov    0x1c(%ebx),%eax
52836c:	c7 00 07 00 00 00    	movl   $0x7,(%eax)
528372:	33 c0                	xor    %eax,%eax
528374:	5d                   	pop    %ebp
528375:	5f                   	pop    %edi
528376:	5e                   	pop    %esi
528377:	5b                   	pop    %ebx
528378:	c3                   	ret
528379:	90                   	nop
52837a:	90                   	nop
52837b:	90                   	nop
52837c:	53                   	push   %ebx
52837d:	56                   	push   %esi
52837e:	57                   	push   %edi
52837f:	8b d8                	mov    %eax,%ebx
528381:	85 db                	test   %ebx,%ebx
528383:	74 06                	je     0x52838b
528385:	83 7b 1c 00          	cmpl   $0x0,0x1c(%ebx)
528389:	75 0a                	jne    0x528395
52838b:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
528390:	e9 90 00 00 00       	jmp    0x528425
528395:	8b 43 1c             	mov    0x1c(%ebx),%eax
528398:	83 38 0d             	cmpl   $0xd,(%eax)
52839b:	74 0b                	je     0x5283a8
52839d:	c7 00 0d 00 00 00    	movl   $0xd,(%eax)
5283a3:	33 d2                	xor    %edx,%edx
5283a5:	89 50 04             	mov    %edx,0x4(%eax)
5283a8:	8b 73 04             	mov    0x4(%ebx),%esi
5283ab:	85 f6                	test   %esi,%esi
5283ad:	75 07                	jne    0x5283b6
5283af:	b8 fb ff ff ff       	mov    $0xfffffffb,%eax
5283b4:	eb 6f                	jmp    0x528425
5283b6:	8b 3b                	mov    (%ebx),%edi
5283b8:	8b 43 1c             	mov    0x1c(%ebx),%eax
5283bb:	8b 40 04             	mov    0x4(%eax),%eax
5283be:	eb 20                	jmp    0x5283e0
5283c0:	8a 17                	mov    (%edi),%dl
5283c2:	3a 90 58 7c 69 00    	cmp    0x697c58(%eax),%dl
5283c8:	75 03                	jne    0x5283cd
5283ca:	40                   	inc    %eax
5283cb:	eb 11                	jmp    0x5283de
5283cd:	84 d2                	test   %dl,%dl
5283cf:	74 04                	je     0x5283d5
5283d1:	33 c0                	xor    %eax,%eax
5283d3:	eb 09                	jmp    0x5283de
5283d5:	ba 04 00 00 00       	mov    $0x4,%edx
5283da:	2b d0                	sub    %eax,%edx
5283dc:	8b c2                	mov    %edx,%eax
5283de:	47                   	inc    %edi
5283df:	4e                   	dec    %esi
5283e0:	85 f6                	test   %esi,%esi
5283e2:	74 05                	je     0x5283e9
5283e4:	83 f8 04             	cmp    $0x4,%eax
5283e7:	72 d7                	jb     0x5283c0
5283e9:	8b cf                	mov    %edi,%ecx
5283eb:	2b 0b                	sub    (%ebx),%ecx
5283ed:	01 4b 08             	add    %ecx,0x8(%ebx)
5283f0:	89 3b                	mov    %edi,(%ebx)
5283f2:	89 73 04             	mov    %esi,0x4(%ebx)
5283f5:	83 f8 04             	cmp    $0x4,%eax
5283f8:	8b 53 1c             	mov    0x1c(%ebx),%edx
5283fb:	89 42 04             	mov    %eax,0x4(%edx)
5283fe:	74 07                	je     0x528407
528400:	b8 fd ff ff ff       	mov    $0xfffffffd,%eax
528405:	eb 1e                	jmp    0x528425
528407:	8b 73 08             	mov    0x8(%ebx),%esi
52840a:	8b 7b 14             	mov    0x14(%ebx),%edi
52840d:	8b c3                	mov    %ebx,%eax
52840f:	e8 70 f9 ff ff       	call   0x527d84
528414:	89 73 08             	mov    %esi,0x8(%ebx)
528417:	89 7b 14             	mov    %edi,0x14(%ebx)