422185:	83 7b 2c 00          	cmpl   $0x0,0x2c(%ebx)
422189:	75 28                	jne    0x4221b3
42218b:	8b cb                	mov    %ebx,%ecx
42218d:	b2 01                	mov    $0x1,%dl
42218f:	a1 4c 0d 42 00       	mov    0x420d4c,%eax
422194:	e8 77 ed ff ff       	call   0x420f10
422199:	8b f0                	mov    %eax,%esi
42219b:	89 73 2c             	mov    %esi,0x2c(%ebx)
42219e:	89 5e 2c             	mov    %ebx,0x2c(%esi)
4221a1:	8b 03                	mov    (%ebx),%eax
4221a3:	8b 40 10             	mov    0x10(%eax),%eax
4221a6:	89 46 28             	mov    %eax,0x28(%esi)
4221a9:	89 5e 34             	mov    %ebx,0x34(%esi)
4221ac:	c7 46 30 00 1e 42 00 	movl   $0x421e00,0x30(%esi)
4221b3:	8b 43 2c             	mov    0x2c(%ebx),%eax
4221b6:	5e                   	pop    %esi
4221b7:	5b                   	pop    %ebx
4221b8:	c3                   	ret
4221b9:	8d 40 00             	lea    0x0(%eax),%eax
4221bc:	53                   	push   %ebx
4221bd:	8b d8                	mov    %eax,%ebx
4221bf:	8b c3                	mov    %ebx,%eax
4221c1:	e8 5e 01 00 00       	call   0x422324
4221c6:	8b c3                	mov    %ebx,%eax
4221c8:	e8 67 01 00 00       	call   0x422334
4221cd:	8b d3                	mov    %ebx,%edx
4221cf:	8b c3                	mov    %ebx,%eax
4221d1:	e8 2a fc ff ff       	call   0x421e00
4221d6:	8b 43 28             	mov    0x28(%ebx),%eax
4221d9:	8b 40 08             	mov    0x8(%eax),%eax
4221dc:	5b                   	pop    %ebx
4221dd:	c3                   	ret
4221de:	8b c0                	mov    %eax,%eax
4221e0:	8b 40 28             	mov    0x28(%eax),%eax
4221e3:	8b 50 08             	mov    0x8(%eax),%edx
4221e6:	85 d2                	test   %edx,%edx
4221e8:	74 05                	je     0x4221ef
4221ea:	3b 50 14             	cmp    0x14(%eax),%edx
4221ed:	75 17                	jne    0x422206
4221ef:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
4221f3:	75 0e                	jne    0x422203
4221f5:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
4221f9:	75 04                	jne    0x4221ff
4221fb:	b0 01                	mov    $0x1,%al
4221fd:	eb 09                	jmp    0x422208
4221ff:	33 c0                	xor    %eax,%eax
422201:	eb 05                	jmp    0x422208
422203:	33 c0                	xor    %eax,%eax
422205:	c3                   	ret
422206:	b0 01                	mov    $0x1,%al
422208:	c3                   	ret
422209:	8d 40 00             	lea    0x0(%eax),%eax
42220c:	8b c8                	mov    %eax,%ecx
42220e:	8b 41 28             	mov    0x28(%ecx),%eax
422211:	8b 40 20             	mov    0x20(%eax),%eax
422214:	99                   	cltd
422215:	33 c2                	xor    %edx,%eax
422217:	2b c2                	sub    %edx,%eax
422219:	c3                   	ret
42221a:	8b c0                	mov    %eax,%eax
42221c:	53                   	push   %ebx
42221d:	8b d8                	mov    %eax,%ebx
42221f:	8b c3                	mov    %ebx,%eax
422221:	e8 ae 01 00 00       	call   0x4223d4
422226:	8b 43 28             	mov    0x28(%ebx),%eax
422229:	8b 40 0c             	mov    0xc(%eax),%eax
42222c:	5b                   	pop    %ebx
42222d:	c3                   	ret
42222e:	8b c0                	mov    %eax,%eax
422230:	8b 40 28             	mov    0x28(%eax),%eax
422233:	83 c0 18             	add    $0x18,%eax
422236:	66 83 78 10 01       	cmpw   $0x1,0x10(%eax)
42223b:	75 07                	jne    0x422244
42223d:	66 83 78 12 01       	cmpw   $0x1,0x12(%eax)
422242:	74 03                	je     0x422247
422244:	33 c0                	xor    %eax,%eax
422246:	c3                   	ret
422247:	b0 01                	mov    $0x1,%al
422249:	c3                   	ret
42224a:	8b c0                	mov    %eax,%eax
42224c:	53                   	push   %ebx
42224d:	8b d8                	mov    %eax,%ebx
42224f:	8b c3                	mov    %ebx,%eax
422251:	e8 de 01 00 00       	call   0x422434
422256:	8b 43 28             	mov    0x28(%ebx),%eax
422259:	8b 40 10             	mov    0x10(%eax),%eax
42225c:	5b                   	pop    %ebx
42225d:	c3                   	ret
42225e:	8b c0                	mov    %eax,%eax
422260:	53                   	push   %ebx
422261:	8b d8                	mov    %eax,%ebx
422263:	8b 43 34             	mov    0x34(%ebx),%eax
422266:	3d 00 00 00 20       	cmp    $0x20000000,%eax
42226b:	75 2c                	jne    0x422299
42226d:	8b c3                	mov    %ebx,%eax
42226f:	e8 bc ff ff ff       	call   0x422230
422274:	84 c0                	test   %al,%al
422276:	74 07                	je     0x42227f
422278:	b8 ff ff ff 00       	mov    $0xffffff,%eax
42227d:	eb 1f                	jmp    0x42229e
42227f:	8b c3                	mov    %ebx,%eax
422281:	8b 10                	mov    (%eax),%edx
422283:	ff 52 20             	call   *0x20(%edx)
422286:	48                   	dec    %eax
422287:	50                   	push   %eax
422288:	8b c3                	mov    %ebx,%eax
42228a:	e8 e5 fe ff ff       	call   0x422174
42228f:	33 d2                	xor    %edx,%edx
422291:	59                   	pop    %ecx
422292:	e8 21 b7 ff ff       	call   0x41d9b8
422297:	eb 05                	jmp    0x42229e
422299:	e8 ba a3 ff ff       	call   0x41c658
42229e:	0d 00 00 00 02       	or     $0x2000000,%eax
4222a3:	5b                   	pop    %ebx
4222a4:	c3                   	ret
4222a5:	8d 40 00             	lea    0x0(%eax),%eax
4222a8:	8b 40 28             	mov    0x28(%eax),%eax
4222ab:	8b 40 1c             	mov    0x1c(%eax),%eax
4222ae:	c3                   	ret
4222af:	90                   	nop
4222b0:	53                   	push   %ebx
4222b1:	56                   	push   %esi
4222b2:	8b 58 28             	mov    0x28(%eax),%ebx
4222b5:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
4222b9:	74 65                	je     0x422320
4222bb:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
4222bf:	75 5f                	jne    0x422320
4222c1:	e8 6e 01 00 00       	call   0x422434
4222c6:	83 7b 30 00          	cmpl   $0x0,0x30(%ebx)
4222ca:	75 3c                	jne    0x422308
4222cc:	8d 43 18             	lea    0x18(%ebx),%eax
4222cf:	50                   	push   %eax
4222d0:	6a 54                	push   $0x54
4222d2:	8b 43 08             	mov    0x8(%ebx),%eax
4222d5:	50                   	push   %eax
4222d6:	e8 05 40 fe ff       	call   0x4062e0
4222db:	8d 43 18             	lea    0x18(%ebx),%eax
4222de:	8b d0                	mov    %eax,%edx
4222e0:	83 c0 18             	add    $0x18,%eax
4222e3:	c7 00 28 00 00 00    	movl   $0x28,(%eax)
4222e9:	8b 4a 04             	mov    0x4(%edx),%ecx
4222ec:	89 48 04             	mov    %ecx,0x4(%eax)
4222ef:	8b 4a 08             	mov    0x8(%edx),%ecx
4222f2:	89 48 08             	mov    %ecx,0x8(%eax)
4222f5:	66 c7 40 0c 01 00    	movw   $0x1,0xc(%eax)
4222fb:	66 8b 4a 10          	mov    0x10(%edx),%cx
4222ff:	66 0f af 4a 12       	imul   0x12(%edx),%cx
422304:	66 89 48 0e          	mov    %cx,0xe(%eax)
422308:	8d 43 18             	lea    0x18(%ebx),%eax
42230b:	50                   	push   %eax
42230c:	6a 00                	push   $0x0
42230e:	8b 73 10             	mov    0x10(%ebx),%esi
422311:	8b ce                	mov    %esi,%ecx
422313:	8b d6                	mov    %esi,%edx
422315:	8b 43 08             	mov    0x8(%ebx),%eax
422318:	e8 bb ef ff ff       	call   0x4212d8
42231d:	89 43 14             	mov    %eax,0x14(%ebx)
422320:	5e                   	pop    %esi
422321:	5b                   	pop    %ebx
422322:	c3                   	ret
422323:	90                   	nop
422324:	8b 50 2c             	mov    0x2c(%eax),%edx
422327:	85 d2                	test   %edx,%edx
422329:	74 07                	je     0x422332
42232b:	8b c2                	mov    %edx,%eax
42232d:	e8 46 ec ff ff       	call   0x420f78
422332:	c3                   	ret
422333:	90                   	nop
422334:	55                   	push   %ebp
422335:	8b ec                	mov    %esp,%ebp
422337:	83 c4 f0             	add    $0xfffffff0,%esp
42233a:	89 45 fc             	mov    %eax,-0x4(%ebp)
42233d:	8b 45 fc             	mov    -0x4(%ebp),%eax
422340:	8b 40 28             	mov    0x28(%eax),%eax
422343:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
422347:	75 75                	jne    0x4223be
422349:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
42234d:	75 6f                	jne    0x4223be
42234f:	83 78 6c 00          	cmpl   $0x0,0x6c(%eax)
422353:	74 69                	je     0x4223be
422355:	6a 00                	push   $0x0
422357:	6a 00                	push   $0x0
422359:	8b 40 6c             	mov    0x6c(%eax),%eax
42235c:	e8 a3 36 ff ff       	call   0x415a04
422361:	8b 45 fc             	mov    -0x4(%ebp),%eax
422364:	8b 50 10             	mov    0x10(%eax),%edx
422367:	89 55 f0             	mov    %edx,-0x10(%ebp)
42236a:	8b 50 14             	mov    0x14(%eax),%edx
42236d:	89 55 f4             	mov    %edx,-0xc(%ebp)
422370:	33 c0                	xor    %eax,%eax
422372:	55                   	push   %ebp
422373:	68 b7 23 42 00       	push   $0x4223b7
422378:	64 ff 30             	push   %fs:(%eax)
42237b:	64 89 20             	mov    %esp,%fs:(%eax)
42237e:	8b 45 fc             	mov    -0x4(%ebp),%eax
422381:	33 d2                	xor    %edx,%edx
422383:	89 50 10             	mov    %edx,0x10(%eax)
422386:	89 50 14             	mov    %edx,0x14(%eax)
422389:	8b 45 fc             	mov    -0x4(%ebp),%eax
42238c:	8b 40 28             	mov    0x28(%eax),%eax
42238f:	8b 50 6c             	mov    0x6c(%eax),%edx
422392:	8b 45 fc             	mov    -0x4(%ebp),%eax
422395:	8b 08                	mov    (%eax),%ecx
422397:	ff 51 54             	call   *0x54(%ecx)
42239a:	33 c0                	xor    %eax,%eax
42239c:	5a                   	pop    %edx
42239d:	59                   	pop    %ecx
42239e:	59                   	pop    %ecx
42239f:	64 89 10             	mov    %edx,%fs:(%eax)
4223a2:	68 be 23 42 00       	push   $0x4223be
4223a7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223aa:	8b 55 f0             	mov    -0x10(%ebp),%edx
4223ad:	89 50 10             	mov    %edx,0x10(%eax)
4223b0:	8b 55 f4             	mov    -0xc(%ebp),%edx
4223b3:	89 50 14             	mov    %edx,0x14(%eax)
4223b6:	c3                   	ret
4223b7:	e9 04 16 fe ff       	jmp    0x4039c0
4223bc:	eb e9                	jmp    0x4223a7
4223be:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223c1:	8b 40 28             	mov    0x28(%eax),%eax
4223c4:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
4223c8:	75 06                	jne    0x4223d0
4223ca:	8b 50 14             	mov    0x14(%eax),%edx
4223cd:	89 50 08             	mov    %edx,0x8(%eax)
4223d0:	8b e5                	mov    %ebp,%esp
4223d2:	5d                   	pop    %ebp
4223d3:	c3                   	ret
4223d4:	53                   	push   %ebx
4223d5:	56                   	push   %esi
4223d6:	8b d8                	mov    %eax,%ebx
4223d8:	80 7b 32 00          	cmpb   $0x0,0x32(%ebx)
4223dc:	74 06                	je     0x4223e4
4223de:	80 7b 31 00          	cmpb   $0x0,0x31(%ebx)
4223e2:	75 4d                	jne    0x422431
4223e4:	8b 73 28             	mov    0x28(%ebx),%esi
4223e7:	8b 46 0c             	mov    0xc(%esi),%eax
4223ea:	85 c0                	test   %eax,%eax
4223ec:	74 13                	je     0x422401
4223ee:	e8 a1 ea ff ff       	call   0x420e94
4223f3:	8b 46 0c             	mov    0xc(%esi),%eax
4223f6:	50                   	push   %eax
4223f7:	e8 7c 3e fe ff       	call   0x406278
4223fc:	33 c0                	xor    %eax,%eax
4223fe:	89 46 0c             	mov    %eax,0xc(%esi)
422401:	8b c3                	mov    %ebx,%eax
422403:	e8 1c ff ff ff       	call   0x422324
422408:	8b c3                	mov    %ebx,%eax
42240a:	e8 25 ff ff ff       	call   0x422334
42240f:	8b 73 28             	mov    0x28(%ebx),%esi
422412:	8b c3                	mov    %ebx,%eax
422414:	e8 47 fe ff ff       	call   0x422260
422419:	8b c8                	mov    %eax,%ecx
42241b:	8b 56 10             	mov    0x10(%esi),%edx
42241e:	8b 46 08             	mov    0x8(%esi),%eax
422421:	e8 7a f5 ff ff       	call   0x4219a0
422426:	89 46 0c             	mov    %eax,0xc(%esi)
422429:	c6 43 32 01          	movb   $0x1,0x32(%ebx)
42242d:	c6 43 31 01          	movb   $0x1,0x31(%ebx)
422431:	5e                   	pop    %esi
422432:	5b                   	pop    %ebx
422433:	c3                   	ret
422434:	53                   	push   %ebx
422435:	56                   	push   %esi
422436:	57                   	push   %edi
422437:	55                   	push   %ebp
422438:	8b f8                	mov    %eax,%edi
42243a:	8b 6f 28             	mov    0x28(%edi),%ebp
42243d:	80 7f 30 00          	cmpb   $0x0,0x30(%edi)
422441:	0f 85 a0 00 00 00    	jne    0x4224e7
422447:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
42244b:	0f 85 96 00 00 00    	jne    0x4224e7
422451:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
422455:	0f 84 8c 00 00 00    	je     0x4224e7
42245b:	8b 45 14             	mov    0x14(%ebp),%eax
42245e:	3b 45 08             	cmp    0x8(%ebp),%eax
422461:	75 05                	jne    0x422468
422463:	e8 2c ea ff ff       	call   0x420e94
422468:	66 8b 4d 3e          	mov    0x3e(%ebp),%cx
42246c:	b8 01 00 00 00       	mov    $0x1,%eax
422471:	d3 e0                	shl    %cl,%eax
422473:	8b c8                	mov    %eax,%ecx
422475:	33 d2                	xor    %edx,%edx
422477:	8b 45 14             	mov    0x14(%ebp),%eax
42247a:	e8 95 c0 ff ff       	call   0x41e514
42247f:	8b f0                	mov    %eax,%esi
422481:	89 75 10             	mov    %esi,0x10(%ebp)
422484:	85 f6                	test   %esi,%esi
422486:	75 5f                	jne    0x4224e7
422488:	6a 00                	push   $0x0
42248a:	e8 19 41 fe ff       	call   0x4065a8
42248f:	e8 90 b9 ff ff       	call   0x41de24
422494:	8b f0                	mov    %eax,%esi
422496:	80 7d 71 00          	cmpb   $0x0,0x71(%ebp)
42249a:	75 27                	jne    0x4224c3
42249c:	6a 0c                	push   $0xc
42249e:	56                   	push   %esi
42249f:	e8 1c 3e fe ff       	call   0x4062c0
4224a4:	8b d8                	mov    %eax,%ebx
4224a6:	6a 0e                	push   $0xe
4224a8:	56                   	push   %esi
4224a9:	e8 12 3e fe ff       	call   0x4062c0
4224ae:	0f af d8             	imul   %eax,%ebx
4224b1:	0f b7 45 2a          	movzwl 0x2a(%ebp),%eax
4224b5:	0f b7 55 28          	movzwl 0x28(%ebp),%edx
4224b9:	f7 ea                	imul   %edx
4224bb:	3b d8                	cmp    %eax,%ebx
4224bd:	7c 04                	jl     0x4224c3
4224bf:	33 db                	xor    %ebx,%ebx
4224c1:	eb 02                	jmp    0x4224c5
4224c3:	b3 01                	mov    $0x1,%bl
4224c5:	88 5d 71             	mov    %bl,0x71(%ebp)
4224c8:	84 db                	test   %bl,%bl
4224ca:	74 09                	je     0x4224d5
4224cc:	56                   	push   %esi
4224cd:	e8 76 3d fe ff       	call   0x406248
4224d2:	89 45 10             	mov    %eax,0x10(%ebp)
4224d5:	56                   	push   %esi
4224d6:	6a 00                	push   $0x0
4224d8:	e8 0b 43 fe ff       	call   0x4067e8
4224dd:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
4224e1:	75 04                	jne    0x4224e7
4224e3:	c6 47 30 01          	movb   $0x1,0x30(%edi)
4224e7:	5d                   	pop    %ebp
4224e8:	5f                   	pop    %edi
4224e9:	5e                   	pop    %esi
4224ea:	5b                   	pop    %ebx
4224eb:	c3                   	ret
4224ec:	55                   	push   %ebp
4224ed:	8b ec                	mov    %esp,%ebp
4224ef:	83 c4 ac             	add    $0xffffffac,%esp
4224f2:	53                   	push   %ebx
4224f3:	56                   	push   %esi
4224f4:	8b d9                	mov    %ecx,%ebx
4224f6:	8b f0                	mov    %eax,%esi
4224f8:	66 83 fa 02          	cmp    $0x2,%dx
4224fc:	75 04                	jne    0x422502
4224fe:	85 db                	test   %ebx,%ebx
422500:	75 0a                	jne    0x42250c
422502:	a1 18 7f 46 00       	mov    0x467f18,%eax
422507:	e8 e0 b7 ff ff       	call   0x41dcec
42250c:	8b c6                	mov    %esi,%eax
42250e:	e8 11 fe ff ff       	call   0x422324
422513:	8d 45 ac             	lea    -0x54(%ebp),%eax
422516:	33 c9                	xor    %ecx,%ecx
422518:	ba 54 00 00 00       	mov    $0x54,%edx
42251d:	e8 66 07 fe ff       	call   0x402c88
422522:	8d 45 ac             	lea    -0x54(%ebp),%eax
422525:	50                   	push   %eax
422526:	6a 54                	push   $0x54
422528:	53                   	push   %ebx