421fdc:	33 c0                	xor    %eax,%eax
421fde:	55                   	push   %ebp
421fdf:	68 75 20 42 00       	push   $0x422075
421fe4:	64 ff 30             	push   %fs:(%eax)
421fe7:	64 89 20             	mov    %esp,%fs:(%eax)
421fea:	6a 00                	push   $0x0
421fec:	e8 37 42 fe ff       	call   0x406228
421ff1:	e8 2e be ff ff       	call   0x41de24
421ff6:	89 45 e8             	mov    %eax,-0x18(%ebp)
421ff9:	8b 46 0c             	mov    0xc(%esi),%eax
421ffc:	50                   	push   %eax
421ffd:	8b 45 e8             	mov    -0x18(%ebp),%eax
422000:	50                   	push   %eax
422001:	e8 92 43 fe ff       	call   0x406398
422006:	89 45 e4             	mov    %eax,-0x1c(%ebp)
422009:	8b 47 08             	mov    0x8(%edi),%eax
42200c:	2b 07                	sub    (%edi),%eax
42200e:	50                   	push   %eax
42200f:	8b 47 0c             	mov    0xc(%edi),%eax
422012:	2b 47 04             	sub    0x4(%edi),%eax
422015:	50                   	push   %eax
422016:	8b c3                	mov    %ebx,%eax
422018:	e8 57 01 00 00       	call   0x422174
42201d:	8b 40 04             	mov    0x4(%eax),%eax
422020:	50                   	push   %eax
422021:	6a 00                	push   $0x0
422023:	6a 00                	push   $0x0
422025:	8b 46 1c             	mov    0x1c(%esi),%eax
422028:	50                   	push   %eax
422029:	8b 46 20             	mov    0x20(%esi),%eax
42202c:	50                   	push   %eax
42202d:	8b 45 e8             	mov    -0x18(%ebp),%eax
422030:	50                   	push   %eax
422031:	6a 00                	push   $0x0
422033:	6a 00                	push   $0x0
422035:	8b 4f 04             	mov    0x4(%edi),%ecx
422038:	8b 17                	mov    (%edi),%edx
42203a:	8b 45 fc             	mov    -0x4(%ebp),%eax
42203d:	8b 40 04             	mov    0x4(%eax),%eax
422040:	e8 83 bf ff ff       	call   0x41dfc8
422045:	33 c0                	xor    %eax,%eax
422047:	5a                   	pop    %edx
422048:	59                   	pop    %ecx
422049:	59                   	pop    %ecx
42204a:	64 89 10             	mov    %edx,%fs:(%eax)
42204d:	68 ba 20 42 00       	push   $0x4220ba
422052:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
422056:	74 0d                	je     0x422065
422058:	8b 45 e4             	mov    -0x1c(%ebp),%eax
42205b:	50                   	push   %eax
42205c:	8b 45 e8             	mov    -0x18(%ebp),%eax
42205f:	50                   	push   %eax
422060:	e8 33 43 fe ff       	call   0x406398
422065:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
422069:	74 09                	je     0x422074
42206b:	8b 45 e8             	mov    -0x18(%ebp),%eax
42206e:	50                   	push   %eax
42206f:	e8 f4 41 fe ff       	call   0x406268
422074:	c3                   	ret
422075:	e9 46 19 fe ff       	jmp    0x4039c0
42207a:	eb d6                	jmp    0x422052
42207c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42207f:	8b 40 20             	mov    0x20(%eax),%eax
422082:	50                   	push   %eax
422083:	8b 46 20             	mov    0x20(%esi),%eax
422086:	50                   	push   %eax
422087:	8b 46 1c             	mov    0x1c(%esi),%eax
42208a:	50                   	push   %eax
42208b:	6a 00                	push   $0x0
42208d:	6a 00                	push   $0x0
42208f:	8b c3                	mov    %ebx,%eax
422091:	e8 de 00 00 00       	call   0x422174
422096:	8b 40 04             	mov    0x4(%eax),%eax
422099:	50                   	push   %eax
42209a:	8b 47 0c             	mov    0xc(%edi),%eax
42209d:	2b 47 04             	sub    0x4(%edi),%eax
4220a0:	50                   	push   %eax
4220a1:	8b 47 08             	mov    0x8(%edi),%eax
4220a4:	2b 07                	sub    (%edi),%eax
4220a6:	50                   	push   %eax
4220a7:	8b 47 04             	mov    0x4(%edi),%eax
4220aa:	50                   	push   %eax
4220ab:	8b 07                	mov    (%edi),%eax
4220ad:	50                   	push   %eax
4220ae:	8b 45 fc             	mov    -0x4(%ebp),%eax
4220b1:	8b 40 04             	mov    0x4(%eax),%eax
4220b4:	50                   	push   %eax
4220b5:	e8 4e 43 fe ff       	call   0x406408
4220ba:	33 c0                	xor    %eax,%eax
4220bc:	5a                   	pop    %edx
4220bd:	59                   	pop    %ecx
4220be:	59                   	pop    %ecx
4220bf:	64 89 10             	mov    %edx,%fs:(%eax)
4220c2:	68 e7 20 42 00       	push   $0x4220e7
4220c7:	80 7d f7 00          	cmpb   $0x0,-0x9(%ebp)
4220cb:	74 12                	je     0x4220df
4220cd:	6a ff                	push   $0xffffffff
4220cf:	8b 45 f8             	mov    -0x8(%ebp),%eax
4220d2:	50                   	push   %eax
4220d3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4220d6:	8b 40 04             	mov    0x4(%eax),%eax
4220d9:	50                   	push   %eax
4220da:	e8 c1 42 fe ff       	call   0x4063a0
4220df:	c3                   	ret
4220e0:	e9 db 18 fe ff       	jmp    0x4039c0
4220e5:	eb e0                	jmp    0x4220c7
4220e7:	5f                   	pop    %edi
4220e8:	5e                   	pop    %esi
4220e9:	5b                   	pop    %ebx
4220ea:	8b e5                	mov    %ebp,%esp
4220ec:	5d                   	pop    %ebp
4220ed:	c3                   	ret
4220ee:	00 00                	add    %al,(%eax)
4220f0:	0f 00 00             	sldt   (%eax)
4220f3:	00 53 56             	add    %dl,0x56(%ebx)
4220f6:	8b f0                	mov    %eax,%esi
4220f8:	8b 5e 28             	mov    0x28(%esi),%ebx
4220fb:	83 7b 04 01          	cmpl   $0x1,0x4(%ebx)
4220ff:	7e 27                	jle    0x422128
422101:	8b c6                	mov    %esi,%eax
422103:	e8 2c 02 00 00       	call   0x422334
422108:	80 7b 71 00          	cmpb   $0x0,0x71(%ebx)
42210c:	74 04                	je     0x422112
42210e:	33 c0                	xor    %eax,%eax
422110:	eb 03                	jmp    0x422115
422112:	8b 43 10             	mov    0x10(%ebx),%eax
422115:	8d 53 18             	lea    0x18(%ebx),%edx
422118:	52                   	push   %edx
422119:	8b c8                	mov    %eax,%ecx
42211b:	8b 53 08             	mov    0x8(%ebx),%edx
42211e:	8b c6                	mov    %esi,%eax
422120:	e8 1b fc ff ff       	call   0x421d40
422125:	5e                   	pop    %esi
422126:	5b                   	pop    %ebx
422127:	c3                   	ret
422128:	8b 43 08             	mov    0x8(%ebx),%eax
42212b:	85 c0                	test   %eax,%eax
42212d:	74 25                	je     0x422154
42212f:	3b 43 14             	cmp    0x14(%ebx),%eax
422132:	74 20                	je     0x422154
422134:	8b 73 14             	mov    0x14(%ebx),%esi
422137:	85 f6                	test   %esi,%esi
422139:	74 0f                	je     0x42214a
42213b:	56                   	push   %esi
42213c:	e8 37 41 fe ff       	call   0x406278
422141:	85 c0                	test   %eax,%eax
422143:	75 05                	jne    0x42214a
422145:	e8 32 bc ff ff       	call   0x41dd7c
42214a:	33 c0                	xor    %eax,%eax
42214c:	89 43 14             	mov    %eax,0x14(%ebx)
42214f:	33 c0                	xor    %eax,%eax
422151:	89 43 2c             	mov    %eax,0x2c(%ebx)
422154:	5e                   	pop    %esi
422155:	5b                   	pop    %ebx
422156:	c3                   	ret
422157:	90                   	nop
422158:	8b 40 28             	mov    0x28(%eax),%eax
42215b:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
42215f:	75 0c                	jne    0x42216d
422161:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
422165:	75 06                	jne    0x42216d
422167:	83 78 6c 00          	cmpl   $0x0,0x6c(%eax)
42216b:	74 03                	je     0x422170
42216d:	33 c0                	xor    %eax,%eax
42216f:	c3                   	ret
422170:	b0 01                	mov    $0x1,%al
422172:	c3                   	ret
422173:	90                   	nop
422174:	53                   	push   %ebx
422175:	56                   	push   %esi
422176:	8b d8                	mov    %eax,%ebx
422178:	83 7b 2c 00          	cmpl   $0x0,0x2c(%ebx)
42217c:	75 35                	jne    0x4221b3
42217e:	8b c3                	mov    %ebx,%eax
422180:	e8 af 01 00 00       	call   0x422334
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)