42611c:	8b ff                	mov    %edi,%edi
42611e:	55                   	push   %ebp
42611f:	8b ec                	mov    %esp,%ebp
426121:	51                   	push   %ecx
426122:	8b 55 0c             	mov    0xc(%ebp),%edx
426125:	0f b7 42 06          	movzwl 0x6(%edx),%eax
426129:	53                   	push   %ebx
42612a:	8b c8                	mov    %eax,%ecx
42612c:	56                   	push   %esi
42612d:	57                   	push   %edi
42612e:	c1 e9 04             	shr    $0x4,%ecx
426131:	25 00 80 00 00       	and    $0x8000,%eax
426136:	bf ff 07 00 00       	mov    $0x7ff,%edi
42613b:	23 cf                	and    %edi,%ecx
42613d:	89 45 0c             	mov    %eax,0xc(%ebp)
426140:	8b 42 04             	mov    0x4(%edx),%eax
426143:	8b 12                	mov    (%edx),%edx
426145:	0f b7 d9             	movzwl %cx,%ebx
426148:	be 00 00 00 80       	mov    $0x80000000,%esi
42614d:	25 ff ff 0f 00       	and    $0xfffff,%eax
426152:	89 75 fc             	mov    %esi,-0x4(%ebp)
426155:	85 db                	test   %ebx,%ebx
426157:	74 13                	je     0x42616c
426159:	3b df                	cmp    %edi,%ebx
42615b:	74 08                	je     0x426165
42615d:	81 c1 00 3c 00 00    	add    $0x3c00,%ecx
426163:	eb 28                	jmp    0x42618d
426165:	bf ff 7f 00 00       	mov    $0x7fff,%edi
42616a:	eb 24                	jmp    0x426190
42616c:	33 db                	xor    %ebx,%ebx
42616e:	3b c3                	cmp    %ebx,%eax
426170:	75 12                	jne    0x426184
426172:	3b d3                	cmp    %ebx,%edx
426174:	75 0e                	jne    0x426184
426176:	8b 45 08             	mov    0x8(%ebp),%eax
426179:	66 8b 4d 0c          	mov    0xc(%ebp),%cx
42617d:	89 58 04             	mov    %ebx,0x4(%eax)
426180:	89 18                	mov    %ebx,(%eax)
426182:	eb 4c                	jmp    0x4261d0
426184:	81 c1 01 3c 00 00    	add    $0x3c01,%ecx
42618a:	89 5d fc             	mov    %ebx,-0x4(%ebp)
42618d:	0f b7 f9             	movzwl %cx,%edi
426190:	8b ca                	mov    %edx,%ecx
426192:	c1 e9 15             	shr    $0x15,%ecx
426195:	c1 e0 0b             	shl    $0xb,%eax
426198:	0b c8                	or     %eax,%ecx
42619a:	0b 4d fc             	or     -0x4(%ebp),%ecx
42619d:	8b 45 08             	mov    0x8(%ebp),%eax
4261a0:	c1 e2 0b             	shl    $0xb,%edx
4261a3:	89 48 04             	mov    %ecx,0x4(%eax)
4261a6:	89 10                	mov    %edx,(%eax)
4261a8:	85 ce                	test   %ecx,%esi
4261aa:	75 1f                	jne    0x4261cb
4261ac:	8b 08                	mov    (%eax),%ecx
4261ae:	8b 50 04             	mov    0x4(%eax),%edx
4261b1:	8b d9                	mov    %ecx,%ebx
4261b3:	03 d2                	add    %edx,%edx
4261b5:	c1 eb 1f             	shr    $0x1f,%ebx
4261b8:	0b d3                	or     %ebx,%edx
4261ba:	03 c9                	add    %ecx,%ecx
4261bc:	81 c7 ff ff 00 00    	add    $0xffff,%edi
4261c2:	89 50 04             	mov    %edx,0x4(%eax)
4261c5:	89 08                	mov    %ecx,(%eax)
4261c7:	85 d6                	test   %edx,%esi
4261c9:	74 e1                	je     0x4261ac
4261cb:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4261ce:	0b cf                	or     %edi,%ecx
4261d0:	5f                   	pop    %edi
4261d1:	5e                   	pop    %esi
4261d2:	66 89 48 08          	mov    %cx,0x8(%eax)
4261d6:	5b                   	pop    %ebx
4261d7:	c9                   	leave
4261d8:	c3                   	ret
4261d9:	8b ff                	mov    %edi,%edi
4261db:	55                   	push   %ebp
4261dc:	8b ec                	mov    %esp,%ebp
4261de:	83 ec 30             	sub    $0x30,%esp
4261e1:	a1 98 f2 42 00       	mov    0x42f298,%eax
4261e6:	33 c5                	xor    %ebp,%eax
4261e8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4261eb:	8b 45 14             	mov    0x14(%ebp),%eax
4261ee:	53                   	push   %ebx
4261ef:	8b 5d 10             	mov    0x10(%ebp),%ebx
4261f2:	56                   	push   %esi
4261f3:	89 45 d0             	mov    %eax,-0x30(%ebp)
4261f6:	57                   	push   %edi
4261f7:	8d 45 08             	lea    0x8(%ebp),%eax
4261fa:	50                   	push   %eax
4261fb:	8d 45 f0             	lea    -0x10(%ebp),%eax
4261fe:	50                   	push   %eax
4261ff:	e8 18 ff ff ff       	call   0x42611c
426204:	59                   	pop    %ecx
426205:	59                   	pop    %ecx
426206:	8d 45 d4             	lea    -0x2c(%ebp),%eax
426209:	50                   	push   %eax
42620a:	6a 00                	push   $0x0
42620c:	6a 11                	push   $0x11
42620e:	83 ec 0c             	sub    $0xc,%esp
426211:	8d 75 f0             	lea    -0x10(%ebp),%esi
426214:	8b fc                	mov    %esp,%edi
426216:	a5                   	movsl  %ds:(%esi),%es:(%edi)
426217:	a5                   	movsl  %ds:(%esi),%es:(%edi)
426218:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
42621a:	e8 dd 1d 00 00       	call   0x427ffc
42621f:	8b 75 d0             	mov    -0x30(%ebp),%esi
426222:	89 43 08             	mov    %eax,0x8(%ebx)
426225:	0f be 45 d6          	movsbl -0x2a(%ebp),%eax
426229:	89 03                	mov    %eax,(%ebx)
42622b:	0f bf 45 d4          	movswl -0x2c(%ebp),%eax
42622f:	89 43 04             	mov    %eax,0x4(%ebx)
426232:	8d 45 d8             	lea    -0x28(%ebp),%eax
426235:	50                   	push   %eax
426236:	ff 75 18             	push   0x18(%ebp)
426239:	56                   	push   %esi
42623a:	e8 1e c2 ff ff       	call   0x42245d
42623f:	83 c4 24             	add    $0x24,%esp
426242:	85 c0                	test   %eax,%eax
426244:	74 0f                	je     0x426255
426246:	33 c0                	xor    %eax,%eax
426248:	50                   	push   %eax
426249:	50                   	push   %eax
42624a:	50                   	push   %eax
42624b:	50                   	push   %eax
42624c:	50                   	push   %eax
42624d:	e8 79 98 ff ff       	call   0x41facb
426252:	83 c4 14             	add    $0x14,%esp
426255:	8b 4d fc             	mov    -0x4(%ebp),%ecx
426258:	5f                   	pop    %edi
426259:	89 73 0c             	mov    %esi,0xc(%ebx)
42625c:	5e                   	pop    %esi
42625d:	8b c3                	mov    %ebx,%eax
42625f:	33 cd                	xor    %ebp,%ecx
426261:	5b                   	pop    %ebx
426262:	e8 67 7f ff ff       	call   0x41e1ce
426267:	c9                   	leave
426268:	c3                   	ret
426269:	6a 02                	push   $0x2
42626b:	e8 05 a9 ff ff       	call   0x420b75
426270:	59                   	pop    %ecx
426271:	c3                   	ret
426272:	8b ff                	mov    %edi,%edi
426274:	55                   	push   %ebp
426275:	8b ec                	mov    %esp,%ebp
426277:	8b 45 10             	mov    0x10(%ebp),%eax
42627a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
42627d:	25 ff ff f7 ff       	and    $0xfff7ffff,%eax
426282:	23 c8                	and    %eax,%ecx
426284:	56                   	push   %esi
426285:	f7 c1 e0 fc f0 fc    	test   $0xfcf0fce0,%ecx
42628b:	74 31                	je     0x4262be
42628d:	57                   	push   %edi
42628e:	8b 7d 08             	mov    0x8(%ebp),%edi
426291:	33 f6                	xor    %esi,%esi
426293:	3b fe                	cmp    %esi,%edi
426295:	74 0b                	je     0x4262a2
426297:	56                   	push   %esi
426298:	56                   	push   %esi
426299:	e8 b0 27 00 00       	call   0x428a4e
42629e:	59                   	pop    %ecx
42629f:	59                   	pop    %ecx
4262a0:	89 07                	mov    %eax,(%edi)
4262a2:	e8 f7 85 ff ff       	call   0x41e89e
4262a7:	6a 16                	push   $0x16
4262a9:	5f                   	pop    %edi
4262aa:	56                   	push   %esi
4262ab:	56                   	push   %esi
4262ac:	56                   	push   %esi
4262ad:	56                   	push   %esi
4262ae:	56                   	push   %esi
4262af:	89 38                	mov    %edi,(%eax)
4262b1:	e8 3d 99 ff ff       	call   0x41fbf3
4262b6:	83 c4 14             	add    $0x14,%esp
4262b9:	8b c7                	mov    %edi,%eax
4262bb:	5f                   	pop    %edi
4262bc:	eb 1d                	jmp    0x4262db
4262be:	8b 75 08             	mov    0x8(%ebp),%esi
4262c1:	50                   	push   %eax
4262c2:	ff 75 0c             	push   0xc(%ebp)
4262c5:	85 f6                	test   %esi,%esi
4262c7:	74 09                	je     0x4262d2
4262c9:	e8 80 27 00 00       	call   0x428a4e
4262ce:	89 06                	mov    %eax,(%esi)
4262d0:	eb 05                	jmp    0x4262d7
4262d2:	e8 77 27 00 00       	call   0x428a4e
4262d7:	59                   	pop    %ecx
4262d8:	59                   	pop    %ecx
4262d9:	33 c0                	xor    %eax,%eax
4262db:	5e                   	pop    %esi
4262dc:	5d                   	pop    %ebp
4262dd:	c3                   	ret
4262de:	8b ff                	mov    %edi,%edi
4262e0:	55                   	push   %ebp
4262e1:	8b ec                	mov    %esp,%ebp
4262e3:	83 ec 10             	sub    $0x10,%esp
4262e6:	ff 75 08             	push   0x8(%ebp)
4262e9:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4262ec:	e8 f7 67 ff ff       	call   0x41cae8
4262f1:	0f b6 45 0c          	movzbl 0xc(%ebp),%eax
4262f5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4262f8:	8a 55 14             	mov    0x14(%ebp),%dl
4262fb:	84 54 01 1d          	test   %dl,0x1d(%ecx,%eax,1)
4262ff:	75 1e                	jne    0x42631f
426301:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
426305:	74 12                	je     0x426319
426307:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42630a:	8b 89 c8 00 00 00    	mov    0xc8(%ecx),%ecx
426310:	0f b7 04 41          	movzwl (%ecx,%eax,2),%eax
426314:	23 45 10             	and    0x10(%ebp),%eax
426317:	eb 02                	jmp    0x42631b
426319:	33 c0                	xor    %eax,%eax
42631b:	85 c0                	test   %eax,%eax
42631d:	74 03                	je     0x426322
42631f:	33 c0                	xor    %eax,%eax
426321:	40                   	inc    %eax
426322:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
426326:	74 07                	je     0x42632f
426328:	8b 4d f8             	mov    -0x8(%ebp),%ecx
42632b:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
42632f:	c9                   	leave
426330:	c3                   	ret
426331:	8b ff                	mov    %edi,%edi
426333:	55                   	push   %ebp
426334:	8b ec                	mov    %esp,%ebp
426336:	6a 04                	push   $0x4
426338:	6a 00                	push   $0x0
42633a:	ff 75 08             	push   0x8(%ebp)
42633d:	6a 00                	push   $0x0
42633f:	e8 9a ff ff ff       	call   0x4262de
426344:	83 c4 10             	add    $0x10,%esp
426347:	5d                   	pop    %ebp
426348:	c3                   	ret
426349:	8b ff                	mov    %edi,%edi
42634b:	55                   	push   %ebp
42634c:	8b ec                	mov    %esp,%ebp
42634e:	8b 4d 08             	mov    0x8(%ebp),%ecx
426351:	53                   	push   %ebx
426352:	33 db                	xor    %ebx,%ebx
426354:	3b cb                	cmp    %ebx,%ecx
426356:	56                   	push   %esi
426357:	57                   	push   %edi
426358:	7c 5b                	jl     0x4263b5
42635a:	3b 0d 98 f7 44 00    	cmp    0x44f798,%ecx
426360:	73 53                	jae    0x4263b5
426362:	8b c1                	mov    %ecx,%eax
426364:	c1 f8 05             	sar    $0x5,%eax
426367:	8b f1                	mov    %ecx,%esi
426369:	8d 3c 85 a0 f7 44 00 	lea    0x44f7a0(,%eax,4),%edi
426370:	8b 07                	mov    (%edi),%eax
426372:	83 e6 1f             	and    $0x1f,%esi
426375:	c1 e6 06             	shl    $0x6,%esi
426378:	03 c6                	add    %esi,%eax
42637a:	f6 40 04 01          	testb  $0x1,0x4(%eax)
42637e:	74 35                	je     0x4263b5
426380:	83 38 ff             	cmpl   $0xffffffff,(%eax)
426383:	74 30                	je     0x4263b5
426385:	83 3d 68 f2 42 00 01 	cmpl   $0x1,0x42f268
42638c:	75 1d                	jne    0x4263ab
42638e:	2b cb                	sub    %ebx,%ecx
426390:	74 10                	je     0x4263a2
426392:	49                   	dec    %ecx
426393:	74 08                	je     0x42639d
426395:	49                   	dec    %ecx
426396:	75 13                	jne    0x4263ab
426398:	53                   	push   %ebx
426399:	6a f4                	push   $0xfffffff4
42639b:	eb 08                	jmp    0x4263a5
42639d:	53                   	push   %ebx
42639e:	6a f5                	push   $0xfffffff5
4263a0:	eb 03                	jmp    0x4263a5
4263a2:	53                   	push   %ebx
4263a3:	6a f6                	push   $0xfffffff6
4263a5:	ff 15 48 a1 42 00    	call   *0x42a148
4263ab:	8b 07                	mov    (%edi),%eax
4263ad:	83 0c 06 ff          	orl    $0xffffffff,(%esi,%eax,1)
4263b1:	33 c0                	xor    %eax,%eax
4263b3:	eb 15                	jmp    0x4263ca
4263b5:	e8 e4 84 ff ff       	call   0x41e89e
4263ba:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4263c0:	e8 ec 84 ff ff       	call   0x41e8b1
4263c5:	89 18                	mov    %ebx,(%eax)
4263c7:	83 c8 ff             	or     $0xffffffff,%eax
4263ca:	5f                   	pop    %edi
4263cb:	5e                   	pop    %esi
4263cc:	5b                   	pop    %ebx
4263cd:	5d                   	pop    %ebp
4263ce:	c3                   	ret
4263cf:	8b ff                	mov    %edi,%edi
4263d1:	55                   	push   %ebp
4263d2:	8b ec                	mov    %esp,%ebp
4263d4:	8b 45 08             	mov    0x8(%ebp),%eax
4263d7:	83 f8 fe             	cmp    $0xfffffffe,%eax
4263da:	75 18                	jne    0x4263f4
4263dc:	e8 d0 84 ff ff       	call   0x41e8b1
4263e1:	83 20 00             	andl   $0x0,(%eax)
4263e4:	e8 b5 84 ff ff       	call   0x41e89e
4263e9:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4263ef:	83 c8 ff             	or     $0xffffffff,%eax
4263f2:	5d                   	pop    %ebp
4263f3:	c3                   	ret
4263f4:	56                   	push   %esi
4263f5:	33 f6                	xor    %esi,%esi
4263f7:	3b c6                	cmp    %esi,%eax
4263f9:	7c 22                	jl     0x42641d
4263fb:	3b 05 98 f7 44 00    	cmp    0x44f798,%eax
426401:	73 1a                	jae    0x42641d
426403:	8b c8                	mov    %eax,%ecx
426405:	83 e0 1f             	and    $0x1f,%eax
426408:	c1 f9 05             	sar    $0x5,%ecx
42640b:	8b 0c 8d a0 f7 44 00 	mov    0x44f7a0(,%ecx,4),%ecx
426412:	c1 e0 06             	shl    $0x6,%eax
426415:	03 c1                	add    %ecx,%eax
426417:	f6 40 04 01          	testb  $0x1,0x4(%eax)
42641b:	75 24                	jne    0x426441
42641d:	e8 8f 84 ff ff       	call   0x41e8b1
426422:	89 30                	mov    %esi,(%eax)
426424:	e8 75 84 ff ff       	call   0x41e89e
426429:	56                   	push   %esi
42642a:	56                   	push   %esi
42642b:	56                   	push   %esi
42642c:	56                   	push   %esi
42642d:	56                   	push   %esi
42642e:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
426434:	e8 ba 97 ff ff       	call   0x41fbf3
426439:	83 c4 14             	add    $0x14,%esp
42643c:	83 c8 ff             	or     $0xffffffff,%eax
42643f:	eb 02                	jmp    0x426443
426441:	8b 00                	mov    (%eax),%eax
426443:	5e                   	pop    %esi
426444:	5d                   	pop    %ebp
426445:	c3                   	ret
426446:	6a 0c                	push   $0xc
426448:	68 18 db 42 00       	push   $0x42db18
42644d:	e8 3a 91 ff ff       	call   0x41f58c
426452:	8b 7d 08             	mov    0x8(%ebp),%edi
426455:	8b c7                	mov    %edi,%eax
426457:	c1 f8 05             	sar    $0x5,%eax
42645a:	8b f7                	mov    %edi,%esi
42645c:	83 e6 1f             	and    $0x1f,%esi
42645f:	c1 e6 06             	shl    $0x6,%esi
426462:	03 34 85 a0 f7 44 00 	add    0x44f7a0(,%eax,4),%esi
426469:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
426470:	33 db                	xor    %ebx,%ebx
426472:	39 5e 08             	cmp    %ebx,0x8(%esi)
426475:	75 36                	jne    0x4264ad
426477:	6a 0a                	push   $0xa
426479:	e8 15 86 ff ff       	call   0x41ea93
42647e:	59                   	pop    %ecx
42647f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
426482:	39 5e 08             	cmp    %ebx,0x8(%esi)
426485:	75 1a                	jne    0x4264a1