45ffd5:	50                   	push   %eax
45ffd6:	e8 05 03 00 00       	call   0x4602e0
45ffdb:	8b c6                	mov    %esi,%eax
45ffdd:	e9 b2 00 00 00       	jmp    0x460094
45ffe2:	8b 45 c0             	mov    -0x40(%ebp),%eax
45ffe5:	6a 18                	push   $0x18
45ffe7:	89 4d b0             	mov    %ecx,-0x50(%ebp)
45ffea:	c7 45 b4 03 00 00 00 	movl   $0x3,-0x4c(%ebp)
45fff1:	8b 00                	mov    (%eax),%eax
45fff3:	89 45 c8             	mov    %eax,-0x38(%ebp)
45fff6:	e8 2a 12 17 00       	call   0x5d1225
45fffb:	8b f8                	mov    %eax,%edi
45fffd:	83 c4 04             	add    $0x4,%esp
460000:	85 ff                	test   %edi,%edi
460002:	74 16                	je     0x46001a
460004:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
46000a:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
460011:	c7 47 14 0f 00 00 00 	movl   $0xf,0x14(%edi)
460018:	eb 02                	jmp    0x46001c
46001a:	33 ff                	xor    %edi,%edi
46001c:	8b 45 c8             	mov    -0x38(%ebp),%eax
46001f:	89 7d b8             	mov    %edi,-0x48(%ebp)
460022:	8b 48 04             	mov    0x4(%eax),%ecx
460025:	3b 48 08             	cmp    0x8(%eax),%ecx
460028:	74 0d                	je     0x460037
46002a:	0f 10 45 b0          	movups -0x50(%ebp),%xmm0
46002e:	0f 11 01             	movups %xmm0,(%ecx)
460031:	83 40 04 10          	addl   $0x10,0x4(%eax)
460035:	eb 0c                	jmp    0x460043
460037:	8d 55 b0             	lea    -0x50(%ebp),%edx
46003a:	52                   	push   %edx
46003b:	51                   	push   %ecx
46003c:	8b c8                	mov    %eax,%ecx
46003e:	e8 9d 02 00 00       	call   0x4602e0
460043:	0f b6 16             	movzbl (%esi),%edx
460046:	89 55 c8             	mov    %edx,-0x38(%ebp)
460049:	81 fa 80 00 00 00    	cmp    $0x80,%edx
46004f:	73 03                	jae    0x460054
460051:	46                   	inc    %esi
460052:	eb 17                	jmp    0x46006b
460054:	52                   	push   %edx
460055:	8d 45 b8             	lea    -0x48(%ebp),%eax
460058:	56                   	push   %esi
460059:	50                   	push   %eax
46005a:	e8 11 f8 ff ff       	call   0x45f870
46005f:	8b 55 bc             	mov    -0x44(%ebp),%edx
460062:	83 c4 0c             	add    $0xc,%esp
460065:	8b 75 b8             	mov    -0x48(%ebp),%esi
460068:	89 55 c8             	mov    %edx,-0x38(%ebp)
46006b:	85 f6                	test   %esi,%esi
46006d:	74 23                	je     0x460092
46006f:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
460072:	8b 41 04             	mov    0x4(%ecx),%eax
460075:	2b c6                	sub    %esi,%eax
460077:	83 c0 10             	add    $0x10,%eax
46007a:	3b d0                	cmp    %eax,%edx
46007c:	7f 31                	jg     0x4600af
46007e:	52                   	push   %edx
46007f:	56                   	push   %esi
460080:	8b cf                	mov    %edi,%ecx
460082:	e8 99 75 fe ff       	call   0x447620
460087:	03 75 c8             	add    -0x38(%ebp),%esi
46008a:	85 f6                	test   %esi,%esi
46008c:	0f 85 50 01 00 00    	jne    0x4601e2
460092:	33 c0                	xor    %eax,%eax
460094:	8b 4d f4             	mov    -0xc(%ebp),%ecx
460097:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
46009e:	59                   	pop    %ecx
46009f:	5f                   	pop    %edi
4600a0:	5e                   	pop    %esi
4600a1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4600a4:	33 cd                	xor    %ebp,%ecx
4600a6:	e8 7b 19 17 00       	call   0x5d1a26
4600ab:	8b e5                	mov    %ebp,%esp
4600ad:	5d                   	pop    %ebp
4600ae:	c3                   	ret
4600af:	57                   	push   %edi
4600b0:	52                   	push   %edx
4600b1:	56                   	push   %esi
4600b2:	e8 39 f8 ff ff       	call   0x45f8f0
4600b7:	8b f0                	mov    %eax,%esi
4600b9:	eb cf                	jmp    0x46008a
4600bb:	8b 45 c0             	mov    -0x40(%ebp),%eax
4600be:	6a 0c                	push   $0xc
4600c0:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
4600c3:	c7 45 a0 04 00 00 00 	movl   $0x4,-0x60(%ebp)
4600ca:	8b 00                	mov    (%eax),%eax
4600cc:	89 45 c0             	mov    %eax,-0x40(%ebp)
4600cf:	e8 51 11 17 00       	call   0x5d1225
4600d4:	83 c4 04             	add    $0x4,%esp
4600d7:	89 45 c4             	mov    %eax,-0x3c(%ebp)
4600da:	85 c0                	test   %eax,%eax
4600dc:	74 16                	je     0x4600f4
4600de:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
4600e4:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
4600eb:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%eax)
4600f2:	eb 05                	jmp    0x4600f9
4600f4:	33 c0                	xor    %eax,%eax
4600f6:	89 45 c4             	mov    %eax,-0x3c(%ebp)
4600f9:	8b 4d c0             	mov    -0x40(%ebp),%ecx
4600fc:	89 45 a4             	mov    %eax,-0x5c(%ebp)
4600ff:	8b 51 04             	mov    0x4(%ecx),%edx
460102:	3b 51 08             	cmp    0x8(%ecx),%edx
460105:	74 0d                	je     0x460114
460107:	0f 10 45 9c          	movups -0x64(%ebp),%xmm0
46010b:	0f 11 02             	movups %xmm0,(%edx)
46010e:	83 41 04 10          	addl   $0x10,0x4(%ecx)
460112:	eb 0d                	jmp    0x460121
460114:	8d 45 9c             	lea    -0x64(%ebp),%eax
460117:	50                   	push   %eax
460118:	52                   	push   %edx
460119:	e8 c2 01 00 00       	call   0x4602e0
46011e:	8b 45 c4             	mov    -0x3c(%ebp),%eax
460121:	83 47 44 ff          	addl   $0xffffffff,0x44(%edi)
460125:	89 45 bc             	mov    %eax,-0x44(%ebp)
460128:	0f 88 64 ff ff ff    	js     0x460092
46012e:	ff 47 48             	incl   0x48(%edi)
460131:	8d 45 bc             	lea    -0x44(%ebp),%eax
460134:	57                   	push   %edi
460135:	56                   	push   %esi
460136:	50                   	push   %eax
460137:	e8 d4 00 00 00       	call   0x460210
46013c:	8b 4f 3c             	mov    0x3c(%edi),%ecx
46013f:	8b f0                	mov    %eax,%esi
460141:	8b 45 c8             	mov    -0x38(%ebp),%eax
460144:	83 c4 0c             	add    $0xc,%esp
460147:	ff 4f 48             	decl   0x48(%edi)
46014a:	ff 47 44             	incl   0x44(%edi)
46014d:	c7 47 3c 00 00 00 00 	movl   $0x0,0x3c(%edi)
460154:	8d 04 c5 03 00 00 00 	lea    0x3(,%eax,8),%eax
46015b:	3b c8                	cmp    %eax,%ecx
46015d:	0f 85 2f ff ff ff    	jne    0x460092
460163:	e9 22 ff ff ff       	jmp    0x46008a
460168:	68 f6 02 00 00       	push   $0x2f6
46016d:	68 40 69 60 00       	push   $0x606940
460172:	6a 03                	push   $0x3
460174:	8d 4d cc             	lea    -0x34(%ebp),%ecx
460177:	e8 64 51 01 00       	call   0x4752e0
46017c:	68 b0 69 60 00       	push   $0x6069b0
460181:	8b c8                	mov    %eax,%ecx
460183:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
46018a:	e8 61 57 01 00       	call   0x4758f0
46018f:	50                   	push   %eax
460190:	8d 4d af             	lea    -0x51(%ebp),%ecx
460193:	e8 e8 54 01 00       	call   0x475680
460198:	8d 4d cc             	lea    -0x34(%ebp),%ecx
46019b:	e8 70 54 01 00       	call   0x475610
4601a0:	8b c6                	mov    %esi,%eax
4601a2:	e9 ed fe ff ff       	jmp    0x460094
4601a7:	8b 06                	mov    (%esi),%eax
4601a9:	83 c6 04             	add    $0x4,%esi
4601ac:	89 45 a4             	mov    %eax,-0x5c(%ebp)
4601af:	8b 45 c0             	mov    -0x40(%ebp),%eax
4601b2:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
4601b5:	c7 45 a0 01 00 00 00 	movl   $0x1,-0x60(%ebp)
4601bc:	8b 08                	mov    (%eax),%ecx
4601be:	8b 41 04             	mov    0x4(%ecx),%eax
4601c1:	3b 41 08             	cmp    0x8(%ecx),%eax
4601c4:	74 12                	je     0x4601d8
4601c6:	0f 10 45 9c          	movups -0x64(%ebp),%xmm0
4601ca:	0f 11 00             	movups %xmm0,(%eax)
4601cd:	83 41 04 10          	addl   $0x10,0x4(%ecx)
4601d1:	8b c6                	mov    %esi,%eax
4601d3:	e9 bc fe ff ff       	jmp    0x460094
4601d8:	8d 55 9c             	lea    -0x64(%ebp),%edx
4601db:	52                   	push   %edx
4601dc:	50                   	push   %eax
4601dd:	e8 fe 00 00 00       	call   0x4602e0
4601e2:	8b c6                	mov    %esi,%eax
4601e4:	e9 ab fe ff ff       	jmp    0x460094
4601e9:	0f 1f 00             	nopl   (%eax)
4601ec:	f3 fe 45 00          	repz incb 0x0(%ebp)
4601f0:	8a ff                	mov    %bh,%bh
4601f2:	45                   	inc    %ebp
4601f3:	00 e2                	add    %ah,%dl
4601f5:	ff 45 00             	incl   0x0(%ebp)
4601f8:	bb 00 46 00 68       	mov    $0x68004600,%ebx
4601fd:	01 46 00             	add    %eax,0x0(%esi)
460200:	a7                   	cmpsl  %es:(%edi),%ds:(%esi)
460201:	01 46 00             	add    %eax,0x0(%esi)
460204:	cc                   	int3
460205:	cc                   	int3
460206:	cc                   	int3
460207:	cc                   	int3
460208:	cc                   	int3
460209:	cc                   	int3
46020a:	cc                   	int3
46020b:	cc                   	int3
46020c:	cc                   	int3
46020d:	cc                   	int3
46020e:	cc                   	int3
46020f:	cc                   	int3
460210:	55                   	push   %ebp
460211:	8b ec                	mov    %esp,%ebp
460213:	8b 45 0c             	mov    0xc(%ebp),%eax
460216:	83 ec 10             	sub    $0x10,%esp
460219:	53                   	push   %ebx
46021a:	8b 5d 08             	mov    0x8(%ebp),%ebx
46021d:	56                   	push   %esi
46021e:	57                   	push   %edi
46021f:	8b 7d 10             	mov    0x10(%ebp),%edi
460222:	3b 07                	cmp    (%edi),%eax
460224:	72 26                	jb     0x46024c
460226:	8b c8                	mov    %eax,%ecx
460228:	2b 4f 04             	sub    0x4(%edi),%ecx
46022b:	3b 4f 10             	cmp    0x10(%edi),%ecx
46022e:	0f 84 83 00 00 00    	je     0x4602b7
460234:	ff 77 48             	push   0x48(%edi)
460237:	8d 45 f8             	lea    -0x8(%ebp),%eax
46023a:	51                   	push   %ecx
46023b:	50                   	push   %eax
46023c:	8b cf                	mov    %edi,%ecx
46023e:	e8 ed ec ff ff       	call   0x45ef30
460243:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
460247:	8b 45 f8             	mov    -0x8(%ebp),%eax
46024a:	75 64                	jne    0x4602b0
46024c:	0f b6 30             	movzbl (%eax),%esi
46024f:	8d 50 01             	lea    0x1(%eax),%edx
460252:	81 fe 80 00 00 00    	cmp    $0x80,%esi
460258:	72 2e                	jb     0x460288
46025a:	0f b6 12             	movzbl (%edx),%edx
46025d:	83 c6 80             	add    $0xffffff80,%esi
460260:	8b ca                	mov    %edx,%ecx
460262:	c1 e1 07             	shl    $0x7,%ecx
460265:	03 f1                	add    %ecx,%esi
460267:	81 fa 80 00 00 00    	cmp    $0x80,%edx
46026d:	73 05                	jae    0x460274
46026f:	8d 50 02             	lea    0x2(%eax),%edx
460272:	eb 14                	jmp    0x460288
460274:	56                   	push   %esi
460275:	50                   	push   %eax
460276:	8d 45 f0             	lea    -0x10(%ebp),%eax
460279:	50                   	push   %eax
46027a:	e8 61 f7 ff ff       	call   0x45f9e0
46027f:	8b 75 f4             	mov    -0xc(%ebp),%esi
460282:	83 c4 0c             	add    $0xc,%esp
460285:	8b 55 f0             	mov    -0x10(%ebp),%edx
460288:	85 d2                	test   %edx,%edx
46028a:	74 22                	je     0x4602ae
46028c:	85 f6                	test   %esi,%esi
46028e:	74 3a                	je     0x4602ca
460290:	8b c6                	mov    %esi,%eax
460292:	24 07                	and    $0x7,%al
460294:	3c 04                	cmp    $0x4,%al
460296:	74 32                	je     0x4602ca
460298:	57                   	push   %edi
460299:	52                   	push   %edx
46029a:	53                   	push   %ebx
46029b:	6a 00                	push   $0x0
46029d:	56                   	push   %esi
46029e:	e8 ed fb ff ff       	call   0x45fe90
4602a3:	83 c4 14             	add    $0x14,%esp
4602a6:	85 c0                	test   %eax,%eax
4602a8:	0f 85 74 ff ff ff    	jne    0x460222
4602ae:	33 c0                	xor    %eax,%eax
4602b0:	5f                   	pop    %edi
4602b1:	5e                   	pop    %esi
4602b2:	5b                   	pop    %ebx
4602b3:	8b e5                	mov    %ebp,%esp
4602b5:	5d                   	pop    %ebp
4602b6:	c3                   	ret
4602b7:	85 c9                	test   %ecx,%ecx
4602b9:	7e f5                	jle    0x4602b0
4602bb:	33 c9                	xor    %ecx,%ecx
4602bd:	39 4f 08             	cmp    %ecx,0x8(%edi)
4602c0:	5f                   	pop    %edi
4602c1:	5e                   	pop    %esi
4602c2:	0f 44 c1             	cmove  %ecx,%eax
4602c5:	5b                   	pop    %ebx
4602c6:	8b e5                	mov    %ebp,%esp
4602c8:	5d                   	pop    %ebp
4602c9:	c3                   	ret
4602ca:	8d 4e ff             	lea    -0x1(%esi),%ecx
4602cd:	8b c2                	mov    %edx,%eax
4602cf:	89 4f 3c             	mov    %ecx,0x3c(%edi)
4602d2:	5f                   	pop    %edi
4602d3:	5e                   	pop    %esi
4602d4:	5b                   	pop    %ebx
4602d5:	8b e5                	mov    %ebp,%esp
4602d7:	5d                   	pop    %ebp
4602d8:	c3                   	ret
4602d9:	cc                   	int3
4602da:	cc                   	int3
4602db:	cc                   	int3
4602dc:	cc                   	int3
4602dd:	cc                   	int3
4602de:	cc                   	int3
4602df:	cc                   	int3
4602e0:	55                   	push   %ebp
4602e1:	8b ec                	mov    %esp,%ebp
4602e3:	83 ec 0c             	sub    $0xc,%esp
4602e6:	53                   	push   %ebx
4602e7:	8b 5d 08             	mov    0x8(%ebp),%ebx
4602ea:	56                   	push   %esi
4602eb:	8b f1                	mov    %ecx,%esi
4602ed:	57                   	push   %edi
4602ee:	8b 16                	mov    (%esi),%edx
4602f0:	2b da                	sub    %edx,%ebx
4602f2:	8b 46 04             	mov    0x4(%esi),%eax
4602f5:	2b c2                	sub    %edx,%eax
4602f7:	c1 f8 04             	sar    $0x4,%eax
4602fa:	3d ff ff ff 0f       	cmp    $0xfffffff,%eax
4602ff:	0f 84 a4 00 00 00    	je     0x4603a9
460305:	8b 4e 08             	mov    0x8(%esi),%ecx
460308:	40                   	inc    %eax
460309:	2b ca                	sub    %edx,%ecx
46030b:	89 45 f8             	mov    %eax,-0x8(%ebp)
46030e:	c1 f9 04             	sar    $0x4,%ecx
460311:	b8 ff ff ff 0f       	mov    $0xfffffff,%eax
460316:	8b d1                	mov    %ecx,%edx
460318:	d1 ea                	shr    $1,%edx
46031a:	2b c2                	sub    %edx,%eax
46031c:	3b c8                	cmp    %eax,%ecx
46031e:	76 07                	jbe    0x460327
460320:	bf ff ff ff 0f       	mov    $0xfffffff,%edi
460325:	eb 0a                	jmp    0x460331
460327:	8d 3c 0a             	lea    (%edx,%ecx,1),%edi
46032a:	3b 7d f8             	cmp    -0x8(%ebp),%edi
46032d:	0f 42 7d f8          	cmovb  -0x8(%ebp),%edi
460331:	57                   	push   %edi
460332:	8b ce                	mov    %esi,%ecx
460334:	e8 b7 0d 00 00       	call   0x4610f0
460339:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46033c:	83 e3 f0             	and    $0xfffffff0,%ebx
46033f:	89 45 f4             	mov    %eax,-0xc(%ebp)
460342:	8d 14 03             	lea    (%ebx,%eax,1),%edx
460345:	8b 5d 08             	mov    0x8(%ebp),%ebx
460348:	0f 10 01             	movups (%ecx),%xmm0
46034b:	89 55 fc             	mov    %edx,-0x4(%ebp)
46034e:	0f 11 02             	movups %xmm0,(%edx)
460351:	8b 4e 04             	mov    0x4(%esi),%ecx
460354:	8b 16                	mov    (%esi),%edx
460356:	3b d9                	cmp    %ecx,%ebx
460358:	75 12                	jne    0x46036c
46035a:	2b ca                	sub    %edx,%ecx
46035c:	51                   	push   %ecx
46035d:	52                   	push   %edx
46035e:	50                   	push   %eax
46035f:	e8 6c 2a 17 00       	call   0x5d2dd0
460364:	8b 5d fc             	mov    -0x4(%ebp),%ebx
460367:	83 c4 0c             	add    $0xc,%esp
46036a:	eb 24                	jmp    0x460390
46036c:	8b c3                	mov    %ebx,%eax
46036e:	2b c2                	sub    %edx,%eax
460370:	50                   	push   %eax
460371:	52                   	push   %edx
460372:	ff 75 f4             	push   -0xc(%ebp)
460375:	e8 56 2a 17 00       	call   0x5d2dd0
46037a:	8b 46 04             	mov    0x4(%esi),%eax
46037d:	2b c3                	sub    %ebx,%eax