422050:	81 ce 00 03 00 00    	or     $0x300,%esi
422056:	eb 0e                	jmp    0x422066
422058:	81 ce 00 02 00 00    	or     $0x200,%esi
42205e:	eb 06                	jmp    0x422066
422060:	81 ce 00 01 00 00    	or     $0x100,%esi
422066:	81 e2 00 03 00 00    	and    $0x300,%edx
42206c:	74 10                	je     0x42207e
42206e:	81 fa 00 02 00 00    	cmp    $0x200,%edx
422074:	75 0e                	jne    0x422084
422076:	81 ce 00 00 01 00    	or     $0x10000,%esi
42207c:	eb 06                	jmp    0x422084
42207e:	81 ce 00 00 02 00    	or     $0x20000,%esi
422084:	ba 00 10 00 00       	mov    $0x1000,%edx
422089:	66 85 c2             	test   %ax,%dx
42208c:	74 06                	je     0x422094
42208e:	81 ce 00 00 04 00    	or     $0x40000,%esi
422094:	83 3d 48 96 83 02 01 	cmpl   $0x1,0x2839648
42209b:	0f 8c 89 01 00 00    	jl     0x42222a
4220a1:	81 e7 1f 03 08 03    	and    $0x308031f,%edi
4220a7:	0f ae 5d f0          	stmxcsr -0x10(%ebp)
4220ab:	8b 45 f0             	mov    -0x10(%ebp),%eax
4220ae:	33 c9                	xor    %ecx,%ecx
4220b0:	84 c0                	test   %al,%al
4220b2:	79 03                	jns    0x4220b7
4220b4:	6a 10                	push   $0x10
4220b6:	59                   	pop    %ecx
4220b7:	a9 00 02 00 00       	test   $0x200,%eax
4220bc:	74 03                	je     0x4220c1
4220be:	83 c9 08             	or     $0x8,%ecx
4220c1:	a9 00 04 00 00       	test   $0x400,%eax
4220c6:	74 03                	je     0x4220cb
4220c8:	83 c9 04             	or     $0x4,%ecx
4220cb:	a9 00 08 00 00       	test   $0x800,%eax
4220d0:	74 03                	je     0x4220d5
4220d2:	83 c9 02             	or     $0x2,%ecx
4220d5:	85 c2                	test   %eax,%edx
4220d7:	74 03                	je     0x4220dc
4220d9:	83 c9 01             	or     $0x1,%ecx
4220dc:	a9 00 01 00 00       	test   $0x100,%eax
4220e1:	74 06                	je     0x4220e9
4220e3:	81 c9 00 00 08 00    	or     $0x80000,%ecx
4220e9:	8b d0                	mov    %eax,%edx
4220eb:	bb 00 60 00 00       	mov    $0x6000,%ebx
4220f0:	23 d3                	and    %ebx,%edx
4220f2:	74 2a                	je     0x42211e
4220f4:	81 fa 00 20 00 00    	cmp    $0x2000,%edx
4220fa:	74 1c                	je     0x422118
4220fc:	81 fa 00 40 00 00    	cmp    $0x4000,%edx
422102:	74 0c                	je     0x422110
422104:	3b d3                	cmp    %ebx,%edx
422106:	75 16                	jne    0x42211e
422108:	81 c9 00 03 00 00    	or     $0x300,%ecx
42210e:	eb 0e                	jmp    0x42211e
422110:	81 c9 00 02 00 00    	or     $0x200,%ecx
422116:	eb 06                	jmp    0x42211e
422118:	81 c9 00 01 00 00    	or     $0x100,%ecx
42211e:	6a 40                	push   $0x40
422120:	25 40 80 00 00       	and    $0x8040,%eax
422125:	5b                   	pop    %ebx
422126:	2b c3                	sub    %ebx,%eax
422128:	74 1b                	je     0x422145
42212a:	2d c0 7f 00 00       	sub    $0x7fc0,%eax
42212f:	74 0c                	je     0x42213d
422131:	2b c3                	sub    %ebx,%eax
422133:	75 16                	jne    0x42214b
422135:	81 c9 00 00 00 01    	or     $0x1000000,%ecx
42213b:	eb 0e                	jmp    0x42214b
42213d:	81 c9 00 00 00 03    	or     $0x3000000,%ecx
422143:	eb 06                	jmp    0x42214b
422145:	81 c9 00 00 00 02    	or     $0x2000000,%ecx
42214b:	8b c7                	mov    %edi,%eax
42214d:	23 7d 08             	and    0x8(%ebp),%edi
422150:	f7 d0                	not    %eax
422152:	23 c1                	and    %ecx,%eax
422154:	0b c7                	or     %edi,%eax
422156:	3b c1                	cmp    %ecx,%eax
422158:	0f 84 b5 00 00 00    	je     0x422213
42215e:	50                   	push   %eax
42215f:	e8 44 fc ff ff       	call   0x421da8
422164:	50                   	push   %eax
422165:	89 45 f4             	mov    %eax,-0xc(%ebp)
422168:	e8 db b4 ff ff       	call   0x41d648
42216d:	59                   	pop    %ecx
42216e:	59                   	pop    %ecx
42216f:	0f ae 5d f4          	stmxcsr -0xc(%ebp)
422173:	8b 45 f4             	mov    -0xc(%ebp),%eax
422176:	33 c9                	xor    %ecx,%ecx
422178:	84 c0                	test   %al,%al
42217a:	79 03                	jns    0x42217f
42217c:	6a 10                	push   $0x10
42217e:	59                   	pop    %ecx
42217f:	a9 00 02 00 00       	test   $0x200,%eax
422184:	74 03                	je     0x422189
422186:	83 c9 08             	or     $0x8,%ecx
422189:	a9 00 04 00 00       	test   $0x400,%eax
42218e:	74 03                	je     0x422193
422190:	83 c9 04             	or     $0x4,%ecx
422193:	a9 00 08 00 00       	test   $0x800,%eax
422198:	74 03                	je     0x42219d
42219a:	83 c9 02             	or     $0x2,%ecx
42219d:	a9 00 10 00 00       	test   $0x1000,%eax
4221a2:	74 03                	je     0x4221a7
4221a4:	83 c9 01             	or     $0x1,%ecx
4221a7:	a9 00 01 00 00       	test   $0x100,%eax
4221ac:	74 06                	je     0x4221b4
4221ae:	81 c9 00 00 08 00    	or     $0x80000,%ecx
4221b4:	8b d0                	mov    %eax,%edx
4221b6:	bf 00 60 00 00       	mov    $0x6000,%edi
4221bb:	23 d7                	and    %edi,%edx
4221bd:	74 2a                	je     0x4221e9
4221bf:	81 fa 00 20 00 00    	cmp    $0x2000,%edx
4221c5:	74 1c                	je     0x4221e3
4221c7:	81 fa 00 40 00 00    	cmp    $0x4000,%edx
4221cd:	74 0c                	je     0x4221db
4221cf:	3b d7                	cmp    %edi,%edx
4221d1:	75 16                	jne    0x4221e9
4221d3:	81 c9 00 03 00 00    	or     $0x300,%ecx
4221d9:	eb 0e                	jmp    0x4221e9
4221db:	81 c9 00 02 00 00    	or     $0x200,%ecx
4221e1:	eb 06                	jmp    0x4221e9
4221e3:	81 c9 00 01 00 00    	or     $0x100,%ecx
4221e9:	25 40 80 00 00       	and    $0x8040,%eax
4221ee:	2b c3                	sub    %ebx,%eax
4221f0:	74 1b                	je     0x42220d
4221f2:	2d c0 7f 00 00       	sub    $0x7fc0,%eax
4221f7:	74 0c                	je     0x422205
4221f9:	2b c3                	sub    %ebx,%eax
4221fb:	75 16                	jne    0x422213
4221fd:	81 c9 00 00 00 01    	or     $0x1000000,%ecx
422203:	eb 0e                	jmp    0x422213
422205:	81 c9 00 00 00 03    	or     $0x3000000,%ecx
42220b:	eb 06                	jmp    0x422213
42220d:	81 c9 00 00 00 02    	or     $0x2000000,%ecx
422213:	8b c1                	mov    %ecx,%eax
422215:	0b ce                	or     %esi,%ecx
422217:	33 c6                	xor    %esi,%eax
422219:	a9 1f 03 08 00       	test   $0x8031f,%eax
42221e:	74 06                	je     0x422226
422220:	81 c9 00 00 00 80    	or     $0x80000000,%ecx
422226:	8b c1                	mov    %ecx,%eax
422228:	eb 02                	jmp    0x42222c
42222a:	8b c6                	mov    %esi,%eax
42222c:	5f                   	pop    %edi
42222d:	5e                   	pop    %esi
42222e:	5b                   	pop    %ebx
42222f:	8b e5                	mov    %ebp,%esp
422231:	5d                   	pop    %ebp
422232:	c3                   	ret
422233:	8b ff                	mov    %edi,%edi
422235:	55                   	push   %ebp
422236:	8b ec                	mov    %esp,%ebp
422238:	8b 4d 08             	mov    0x8(%ebp),%ecx
42223b:	33 c0                	xor    %eax,%eax
42223d:	f6 c1 10             	test   $0x10,%cl
422240:	74 01                	je     0x422243
422242:	40                   	inc    %eax
422243:	f6 c1 08             	test   $0x8,%cl
422246:	74 03                	je     0x42224b
422248:	83 c8 04             	or     $0x4,%eax
42224b:	f6 c1 04             	test   $0x4,%cl
42224e:	74 03                	je     0x422253
422250:	83 c8 08             	or     $0x8,%eax
422253:	f6 c1 02             	test   $0x2,%cl
422256:	74 03                	je     0x42225b
422258:	83 c8 10             	or     $0x10,%eax
42225b:	f6 c1 01             	test   $0x1,%cl
42225e:	74 03                	je     0x422263
422260:	83 c8 20             	or     $0x20,%eax
422263:	f7 c1 00 00 08 00    	test   $0x80000,%ecx
422269:	74 03                	je     0x42226e
42226b:	83 c8 02             	or     $0x2,%eax
42226e:	56                   	push   %esi
42226f:	8b d1                	mov    %ecx,%edx
422271:	be 00 03 00 00       	mov    $0x300,%esi
422276:	57                   	push   %edi
422277:	bf 00 02 00 00       	mov    $0x200,%edi
42227c:	23 d6                	and    %esi,%edx
42227e:	74 23                	je     0x4222a3
422280:	81 fa 00 01 00 00    	cmp    $0x100,%edx
422286:	74 16                	je     0x42229e
422288:	3b d7                	cmp    %edi,%edx
42228a:	74 0b                	je     0x422297
42228c:	3b d6                	cmp    %esi,%edx
42228e:	75 13                	jne    0x4222a3
422290:	0d 00 0c 00 00       	or     $0xc00,%eax
422295:	eb 0c                	jmp    0x4222a3
422297:	0d 00 08 00 00       	or     $0x800,%eax
42229c:	eb 05                	jmp    0x4222a3
42229e:	0d 00 04 00 00       	or     $0x400,%eax
4222a3:	8b d1                	mov    %ecx,%edx
4222a5:	81 e2 00 00 03 00    	and    $0x30000,%edx
4222ab:	74 0c                	je     0x4222b9
4222ad:	81 fa 00 00 01 00    	cmp    $0x10000,%edx
4222b3:	75 06                	jne    0x4222bb
4222b5:	0b c7                	or     %edi,%eax
4222b7:	eb 02                	jmp    0x4222bb
4222b9:	0b c6                	or     %esi,%eax
4222bb:	5f                   	pop    %edi
4222bc:	5e                   	pop    %esi
4222bd:	f7 c1 00 00 04 00    	test   $0x40000,%ecx
4222c3:	74 05                	je     0x4222ca
4222c5:	0d 00 10 00 00       	or     $0x1000,%eax
4222ca:	5d                   	pop    %ebp
4222cb:	c3                   	ret
4222cc:	8b ff                	mov    %edi,%edi
4222ce:	55                   	push   %ebp
4222cf:	8b ec                	mov    %esp,%ebp
4222d1:	83 ec 10             	sub    $0x10,%esp
4222d4:	53                   	push   %ebx
4222d5:	56                   	push   %esi
4222d6:	57                   	push   %edi
4222d7:	33 ff                	xor    %edi,%edi
4222d9:	bb e3 00 00 00       	mov    $0xe3,%ebx
4222de:	89 7d f4             	mov    %edi,-0xc(%ebp)
4222e1:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4222e4:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
4222e7:	c7 45 fc 55 00 00 00 	movl   $0x55,-0x4(%ebp)
4222ee:	99                   	cltd
4222ef:	2b c2                	sub    %edx,%eax
4222f1:	8b c8                	mov    %eax,%ecx
4222f3:	d1 f9                	sar    $1,%ecx
4222f5:	6a 41                	push   $0x41
4222f7:	5f                   	pop    %edi
4222f8:	89 4d f0             	mov    %ecx,-0x10(%ebp)
4222fb:	8b 34 cd 00 ee 42 00 	mov    0x42ee00(,%ecx,8),%esi
422302:	8b 4d 08             	mov    0x8(%ebp),%ecx
422305:	6a 5a                	push   $0x5a
422307:	2b ce                	sub    %esi,%ecx
422309:	5b                   	pop    %ebx
42230a:	0f b7 04 31          	movzwl (%ecx,%esi,1),%eax
42230e:	66 3b c7             	cmp    %di,%ax
422311:	72 0d                	jb     0x422320
422313:	66 3b c3             	cmp    %bx,%ax
422316:	77 08                	ja     0x422320
422318:	83 c0 20             	add    $0x20,%eax
42231b:	0f b7 d0             	movzwl %ax,%edx
42231e:	eb 02                	jmp    0x422322
422320:	8b d0                	mov    %eax,%edx
422322:	0f b7 06             	movzwl (%esi),%eax
422325:	66 3b c7             	cmp    %di,%ax
422328:	72 0b                	jb     0x422335
42232a:	66 3b c3             	cmp    %bx,%ax
42232d:	77 06                	ja     0x422335
42232f:	83 c0 20             	add    $0x20,%eax
422332:	0f b7 c0             	movzwl %ax,%eax
422335:	83 c6 02             	add    $0x2,%esi
422338:	83 6d fc 01          	subl   $0x1,-0x4(%ebp)
42233c:	74 0a                	je     0x422348
42233e:	66 85 d2             	test   %dx,%dx
422341:	74 05                	je     0x422348
422343:	66 3b d0             	cmp    %ax,%dx
422346:	74 c2                	je     0x42230a
422348:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42234b:	8b 7d f4             	mov    -0xc(%ebp),%edi
42234e:	8b 5d f8             	mov    -0x8(%ebp),%ebx
422351:	0f b7 c0             	movzwl %ax,%eax
422354:	0f b7 d2             	movzwl %dx,%edx
422357:	2b d0                	sub    %eax,%edx
422359:	74 1f                	je     0x42237a
42235b:	85 d2                	test   %edx,%edx
42235d:	79 08                	jns    0x422367
42235f:	8d 59 ff             	lea    -0x1(%ecx),%ebx
422362:	89 5d f8             	mov    %ebx,-0x8(%ebp)
422365:	eb 06                	jmp    0x42236d
422367:	8d 79 01             	lea    0x1(%ecx),%edi
42236a:	89 7d f4             	mov    %edi,-0xc(%ebp)
42236d:	3b fb                	cmp    %ebx,%edi
42236f:	0f 8e 6f ff ff ff    	jle    0x4222e4
422375:	83 c8 ff             	or     $0xffffffff,%eax
422378:	eb 07                	jmp    0x422381
42237a:	8b 04 cd 04 ee 42 00 	mov    0x42ee04(,%ecx,8),%eax
422381:	5f                   	pop    %edi
422382:	5e                   	pop    %esi
422383:	5b                   	pop    %ebx
422384:	8b e5                	mov    %ebp,%esp
422386:	5d                   	pop    %ebp
422387:	c3                   	ret
422388:	8b ff                	mov    %edi,%edi
42238a:	55                   	push   %ebp
42238b:	8b ec                	mov    %esp,%ebp
42238d:	8b 4d 08             	mov    0x8(%ebp),%ecx
422390:	53                   	push   %ebx
422391:	56                   	push   %esi
422392:	57                   	push   %edi
422393:	85 c9                	test   %ecx,%ecx
422395:	0f 84 83 00 00 00    	je     0x42241e
42239b:	81 f9 00 04 00 00    	cmp    $0x400,%ecx
4223a1:	74 7b                	je     0x42241e
4223a3:	81 f9 00 08 00 00    	cmp    $0x800,%ecx
4223a9:	74 73                	je     0x42241e
4223ab:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4223af:	8b 75 10             	mov    0x10(%ebp),%esi
4223b2:	75 04                	jne    0x4223b8
4223b4:	85 f6                	test   %esi,%esi
4223b6:	7f 66                	jg     0x42241e
4223b8:	85 f6                	test   %esi,%esi
4223ba:	78 62                	js     0x42241e
4223bc:	33 ff                	xor    %edi,%edi
4223be:	bb e3 00 00 00       	mov    $0xe3,%ebx
4223c3:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
4223c6:	99                   	cltd
4223c7:	2b c2                	sub    %edx,%eax
4223c9:	8b d1                	mov    %ecx,%edx
4223cb:	d1 f8                	sar    $1,%eax
4223cd:	2b 14 c5 e0 e6 42 00 	sub    0x42e6e0(,%eax,8),%edx
4223d4:	74 13                	je     0x4223e9
4223d6:	85 d2                	test   %edx,%edx
4223d8:	79 05                	jns    0x4223df
4223da:	8d 58 ff             	lea    -0x1(%eax),%ebx
4223dd:	eb 03                	jmp    0x4223e2
4223df:	8d 78 01             	lea    0x1(%eax),%edi
4223e2:	3b fb                	cmp    %ebx,%edi
4223e4:	7e dd                	jle    0x4223c3
4223e6:	83 c8 ff             	or     $0xffffffff,%eax
4223e9:	85 c0                	test   %eax,%eax
4223eb:	78 31                	js     0x42241e
4223ed:	8b 1c c5 e4 e6 42 00 	mov    0x42e6e4(,%eax,8),%ebx
4223f4:	6a 55                	push   $0x55
4223f6:	53                   	push   %ebx
4223f7:	e8 c3 2a ff ff       	call   0x414ebf
4223fc:	8b f8                	mov    %eax,%edi
4223fe:	59                   	pop    %ecx
4223ff:	59                   	pop    %ecx
422400:	85 f6                	test   %esi,%esi
422402:	7e 15                	jle    0x422419
422404:	3b fe                	cmp    %esi,%edi
422406:	7d 16                	jge    0x42241e
422408:	53                   	push   %ebx
422409:	56                   	push   %esi
42240a:	ff 75 0c             	push   0xc(%ebp)
42240d:	e8 b7 30 ff ff       	call   0x4154c9
422412:	83 c4 0c             	add    $0xc,%esp
422415:	85 c0                	test   %eax,%eax
422417:	75 0c                	jne    0x422425
422419:	8d 47 01             	lea    0x1(%edi),%eax
42241c:	eb 02                	jmp    0x422420
42241e:	33 c0                	xor    %eax,%eax
422420:	5f                   	pop    %edi
422421:	5e                   	pop    %esi
422422:	5b                   	pop    %ebx
422423:	5d                   	pop    %ebp
422424:	c3                   	ret
422425:	33 c0                	xor    %eax,%eax
422427:	50                   	push   %eax
422428:	50                   	push   %eax
422429:	50                   	push   %eax
42242a:	50                   	push   %eax
42242b:	50                   	push   %eax
42242c:	e8 de 98 fe ff       	call   0x40bd0f
422431:	cc                   	int3