462058:	ff 75 0c             	push   0xc(%ebp)
46205b:	8b f1                	mov    %ecx,%esi
46205d:	ff 75 08             	push   0x8(%ebp)
462060:	6a 01                	push   $0x1
462062:	6a 01                	push   $0x1
462064:	e8 6b 04 00 00       	call   0x4624d4
462069:	8b 06                	mov    (%esi),%eax
46206b:	8d 4e 04             	lea    0x4(%esi),%ecx
46206e:	8b 40 04             	mov    0x4(%eax),%eax
462071:	03 c8                	add    %eax,%ecx
462073:	e8 e1 12 fa ff       	call   0x403359
462078:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
46207c:	75 2b                	jne    0x4620a9
46207e:	6a 00                	push   $0x0
462080:	8b ce                	mov    %esi,%ecx
462082:	c7 86 fc 00 00 00 07 	movl   $0x7,0xfc(%esi)
462089:	00 00 00
46208c:	e8 3f c8 fa ff       	call   0x40e8d0
462091:	8b 06                	mov    (%esi),%eax
462093:	8d 4e 04             	lea    0x4(%esi),%ecx
462096:	8b 40 04             	mov    0x4(%eax),%eax
462099:	03 c8                	add    %eax,%ecx
46209b:	e8 b9 12 fa ff       	call   0x403359
4620a0:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4620a3:	50                   	push   %eax
4620a4:	e8 05 bc fa ff       	call   0x40dcae
4620a9:	33 c0                	xor    %eax,%eax
4620ab:	5e                   	pop    %esi
4620ac:	5d                   	pop    %ebp
4620ad:	c2 08 00             	ret    $0x8
4620b0:	55                   	push   %ebp
4620b1:	8b ec                	mov    %esp,%ebp
4620b3:	56                   	push   %esi
4620b4:	ff 75 0c             	push   0xc(%ebp)
4620b7:	8b f1                	mov    %ecx,%esi
4620b9:	ff 75 08             	push   0x8(%ebp)
4620bc:	6a 00                	push   $0x0
4620be:	6a 01                	push   $0x1
4620c0:	e8 0f 04 00 00       	call   0x4624d4
4620c5:	8b 06                	mov    (%esi),%eax
4620c7:	8d 4e 04             	lea    0x4(%esi),%ecx
4620ca:	8b 40 04             	mov    0x4(%eax),%eax
4620cd:	03 c8                	add    %eax,%ecx
4620cf:	e8 85 12 fa ff       	call   0x403359
4620d4:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
4620d8:	75 2b                	jne    0x462105
4620da:	6a 00                	push   $0x0
4620dc:	8b ce                	mov    %esi,%ecx
4620de:	c7 86 fc 00 00 00 07 	movl   $0x7,0xfc(%esi)
4620e5:	00 00 00
4620e8:	e8 e3 c7 fa ff       	call   0x40e8d0
4620ed:	8b 06                	mov    (%esi),%eax
4620ef:	8d 4e 04             	lea    0x4(%esi),%ecx
4620f2:	8b 40 04             	mov    0x4(%eax),%eax
4620f5:	03 c8                	add    %eax,%ecx
4620f7:	e8 5d 12 fa ff       	call   0x403359
4620fc:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4620ff:	50                   	push   %eax
462100:	e8 a9 bb fa ff       	call   0x40dcae
462105:	33 c0                	xor    %eax,%eax
462107:	5e                   	pop    %esi
462108:	5d                   	pop    %ebp
462109:	c2 08 00             	ret    $0x8
46210c:	55                   	push   %ebp
46210d:	8b ec                	mov    %esp,%ebp
46210f:	ff 75 0c             	push   0xc(%ebp)
462112:	8b 45 08             	mov    0x8(%ebp),%eax
462115:	ff 70 08             	push   0x8(%eax)
462118:	50                   	push   %eax
462119:	6a 00                	push   $0x0
46211b:	e8 10 01 00 00       	call   0x462230
462120:	5d                   	pop    %ebp
462121:	c2 08 00             	ret    $0x8
462124:	55                   	push   %ebp
462125:	8b ec                	mov    %esp,%ebp
462127:	8b 45 08             	mov    0x8(%ebp),%eax
46212a:	56                   	push   %esi
46212b:	ff 75 0c             	push   0xc(%ebp)
46212e:	8b f1                	mov    %ecx,%esi
462130:	ff 70 08             	push   0x8(%eax)
462133:	50                   	push   %eax
462134:	6a 01                	push   $0x1
462136:	e8 f5 00 00 00       	call   0x462230
46213b:	8b 06                	mov    (%esi),%eax
46213d:	8d 4e 04             	lea    0x4(%esi),%ecx
462140:	8b 40 04             	mov    0x4(%eax),%eax
462143:	03 c8                	add    %eax,%ecx
462145:	e8 0f 12 fa ff       	call   0x403359
46214a:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
46214e:	75 2b                	jne    0x46217b
462150:	6a 00                	push   $0x0
462152:	8b ce                	mov    %esi,%ecx
462154:	c7 86 fc 00 00 00 07 	movl   $0x7,0xfc(%esi)
46215b:	00 00 00
46215e:	e8 6d c7 fa ff       	call   0x40e8d0
462163:	8b 06                	mov    (%esi),%eax
462165:	8d 4e 04             	lea    0x4(%esi),%ecx
462168:	8b 40 04             	mov    0x4(%eax),%eax
46216b:	03 c8                	add    %eax,%ecx
46216d:	e8 e7 11 fa ff       	call   0x403359
462172:	8b 4d 0c             	mov    0xc(%ebp),%ecx
462175:	50                   	push   %eax
462176:	e8 33 bb fa ff       	call   0x40dcae
46217b:	33 c0                	xor    %eax,%eax
46217d:	5e                   	pop    %esi
46217e:	5d                   	pop    %ebp
46217f:	c2 08 00             	ret    $0x8
462182:	55                   	push   %ebp
462183:	8b ec                	mov    %esp,%ebp
462185:	53                   	push   %ebx
462186:	56                   	push   %esi
462187:	57                   	push   %edi
462188:	8b 7d 08             	mov    0x8(%ebp),%edi
46218b:	8b d9                	mov    %ecx,%ebx
46218d:	83 7f 08 01          	cmpl   $0x1,0x8(%edi)
462191:	be 00 00 00 80       	mov    $0x80000000,%esi
462196:	76 13                	jbe    0x4621ab
462198:	8b 47 04             	mov    0x4(%edi),%eax
46219b:	8b 48 04             	mov    0x4(%eax),%ecx
46219e:	e8 e3 b0 fa ff       	call   0x40d286
4621a3:	8b f0                	mov    %eax,%esi
4621a5:	81 ce 00 00 00 40    	or     $0x40000000,%esi
4621ab:	8b 47 04             	mov    0x4(%edi),%eax
4621ae:	8b 08                	mov    (%eax),%ecx
4621b0:	e8 d1 b0 fa ff       	call   0x40d286
4621b5:	8b d6                	mov    %esi,%edx
4621b7:	8b c8                	mov    %eax,%ecx
4621b9:	e8 15 58 fe ff       	call   0x4479d3
4621be:	85 c0                	test   %eax,%eax
4621c0:	75 28                	jne    0x4621ea
4621c2:	50                   	push   %eax
4621c3:	ff 15 10 d3 48 00    	call   *0x48d310
4621c9:	50                   	push   %eax
4621ca:	8b 03                	mov    (%ebx),%eax
4621cc:	8b 48 04             	mov    0x4(%eax),%ecx
4621cf:	03 cb                	add    %ebx,%ecx
4621d1:	e8 76 ad fe ff       	call   0x44cf4c
4621d6:	8b 75 0c             	mov    0xc(%ebp),%esi
4621d9:	8b ce                	mov    %esi,%ecx
4621db:	e8 40 0a fb ff       	call   0x412c20
4621e0:	83 26 00             	andl   $0x0,(%esi)
4621e3:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
4621ea:	5f                   	pop    %edi
4621eb:	5e                   	pop    %esi
4621ec:	33 c0                	xor    %eax,%eax
4621ee:	5b                   	pop    %ebx
4621ef:	5d                   	pop    %ebp
4621f0:	c2 08 00             	ret    $0x8
4621f3:	56                   	push   %esi
4621f4:	8b f1                	mov    %ecx,%esi
4621f6:	e8 0a 00 00 00       	call   0x462205
4621fb:	33 c0                	xor    %eax,%eax
4621fd:	39 46 08             	cmp    %eax,0x8(%esi)
462200:	5e                   	pop    %esi
462201:	0f 95 c0             	setne  %al
462204:	c3                   	ret
462205:	56                   	push   %esi
462206:	8b f1                	mov    %ecx,%esi
462208:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
46220c:	75 20                	jne    0x46222e
46220e:	68 24 2e 4b 00       	push   $0x4b2e24
462213:	ff 15 8c d1 48 00    	call   *0x48d18c
462219:	89 06                	mov    %eax,(%esi)
46221b:	85 c0                	test   %eax,%eax
46221d:	74 0f                	je     0x46222e
46221f:	68 14 45 4b 00       	push   $0x4b4514
462224:	50                   	push   %eax
462225:	ff 15 90 d1 48 00    	call   *0x48d190
46222b:	89 46 08             	mov    %eax,0x8(%esi)
46222e:	5e                   	pop    %esi
46222f:	c3                   	ret
462230:	55                   	push   %ebp
462231:	8b ec                	mov    %esp,%ebp
462233:	83 ec 6c             	sub    $0x6c,%esp
462236:	53                   	push   %ebx
462237:	56                   	push   %esi
462238:	89 4d f0             	mov    %ecx,-0x10(%ebp)
46223b:	57                   	push   %edi
46223c:	8d 4d d0             	lea    -0x30(%ebp),%ecx
46223f:	e8 b3 b5 fa ff       	call   0x40d7f7
462244:	33 c9                	xor    %ecx,%ecx
462246:	6a 3c                	push   $0x3c
462248:	51                   	push   %ecx
462249:	8d 45 94             	lea    -0x6c(%ebp),%eax
46224c:	50                   	push   %eax
46224d:	89 4d fc             	mov    %ecx,-0x4(%ebp)
462250:	89 4d f8             	mov    %ecx,-0x8(%ebp)
462253:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
46225a:	e8 f1 ea fb ff       	call   0x420d50
46225f:	8b 5d 10             	mov    0x10(%ebp),%ebx
462262:	8b 7d 0c             	mov    0xc(%ebp),%edi
462265:	83 c4 0c             	add    $0xc,%esp
462268:	83 fb 02             	cmp    $0x2,%ebx
46226b:	72 33                	jb     0x4622a0
46226d:	8b 47 04             	mov    0x4(%edi),%eax
462270:	8b 70 04             	mov    0x4(%eax),%esi
462273:	8b ce                	mov    %esi,%ecx
462275:	e8 f2 70 fa ff       	call   0x40936c
46227a:	8b 46 08             	mov    0x8(%esi),%eax
46227d:	33 c9                	xor    %ecx,%ecx
46227f:	8b 00                	mov    (%eax),%eax
462281:	66 39 08             	cmp    %cx,(%eax)
462284:	74 1a                	je     0x4622a0
462286:	8b 47 04             	mov    0x4(%edi),%eax
462289:	8b 70 04             	mov    0x4(%eax),%esi
46228c:	8b ce                	mov    %esi,%ecx
46228e:	e8 d9 70 fa ff       	call   0x40936c
462293:	8b 46 08             	mov    0x8(%esi),%eax
462296:	8b 08                	mov    (%eax),%ecx
462298:	e8 57 a4 fb ff       	call   0x41c6f4
46229d:	89 45 fc             	mov    %eax,-0x4(%ebp)
4622a0:	83 fb 03             	cmp    $0x3,%ebx
4622a3:	72 1a                	jb     0x4622bf
4622a5:	8b 4f 04             	mov    0x4(%edi),%ecx
4622a8:	8b 71 08             	mov    0x8(%ecx),%esi
4622ab:	8b ce                	mov    %esi,%ecx
4622ad:	e8 ba 70 fa ff       	call   0x40936c
4622b2:	8b 46 08             	mov    0x8(%esi),%eax
4622b5:	8b 08                	mov    (%eax),%ecx
4622b7:	e8 38 a4 fb ff       	call   0x41c6f4
4622bc:	89 45 f8             	mov    %eax,-0x8(%ebp)
4622bf:	83 fb 04             	cmp    $0x4,%ebx
4622c2:	72 3e                	jb     0x462302
4622c4:	8b 4f 04             	mov    0x4(%edi),%ecx
4622c7:	8b 71 0c             	mov    0xc(%ecx),%esi
4622ca:	8b ce                	mov    %esi,%ecx
4622cc:	e8 9b 70 fa ff       	call   0x40936c
4622d1:	8b 46 08             	mov    0x8(%esi),%eax
4622d4:	33 f6                	xor    %esi,%esi
4622d6:	8b 00                	mov    (%eax),%eax
4622d8:	66 39 30             	cmp    %si,(%eax)
4622db:	74 27                	je     0x462304
4622dd:	8b 47 04             	mov    0x4(%edi),%eax
4622e0:	6a 29                	push   $0x29
4622e2:	8b 70 0c             	mov    0xc(%eax),%esi
4622e5:	8b ce                	mov    %esi,%ecx
4622e7:	e8 00 f9 f9 ff       	call   0x401bec
4622ec:	84 c0                	test   %al,%al
4622ee:	75 12                	jne    0x462302
4622f0:	8b ce                	mov    %esi,%ecx
4622f2:	e8 75 70 fa ff       	call   0x40936c
4622f7:	ff 76 08             	push   0x8(%esi)
4622fa:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4622fd:	e8 eb 4b fa ff       	call   0x406eed
462302:	33 f6                	xor    %esi,%esi
462304:	83 fb 05             	cmp    $0x5,%ebx
462307:	72 11                	jb     0x46231a
462309:	8b 47 04             	mov    0x4(%edi),%eax
46230c:	8b 48 10             	mov    0x10(%eax),%ecx
46230f:	e8 72 af fa ff       	call   0x40d286
462314:	0f b7 c0             	movzwl %ax,%eax
462317:	89 45 f4             	mov    %eax,-0xc(%ebp)
46231a:	6a 3c                	push   $0x3c
46231c:	5b                   	pop    %ebx
46231d:	53                   	push   %ebx
46231e:	8d 45 94             	lea    -0x6c(%ebp),%eax
462321:	56                   	push   %esi
462322:	50                   	push   %eax
462323:	e8 28 ea fb ff       	call   0x420d50
462328:	8b 45 d0             	mov    -0x30(%ebp),%eax
46232b:	89 45 a0             	mov    %eax,-0x60(%ebp)
46232e:	8b 47 04             	mov    0x4(%edi),%eax
462331:	89 5d 94             	mov    %ebx,-0x6c(%ebp)
462334:	c7 45 98 40 00 00 00 	movl   $0x40,-0x68(%ebp)
46233b:	89 75 9c             	mov    %esi,-0x64(%ebp)
46233e:	8b 30                	mov    (%eax),%esi
462340:	83 c4 0c             	add    $0xc,%esp
462343:	8b ce                	mov    %esi,%ecx
462345:	e8 22 70 fa ff       	call   0x40936c
46234a:	8b 46 08             	mov    0x8(%esi),%eax
46234d:	8b 75 fc             	mov    -0x4(%ebp),%esi
462350:	8b 00                	mov    (%eax),%eax
462352:	8b 5d f8             	mov    -0x8(%ebp),%ebx
462355:	89 45 a4             	mov    %eax,-0x5c(%ebp)
462358:	8b 45 f4             	mov    -0xc(%ebp),%eax
46235b:	89 45 b0             	mov    %eax,-0x50(%ebp)
46235e:	8d 45 94             	lea    -0x6c(%ebp),%eax
462361:	50                   	push   %eax
462362:	89 75 a8             	mov    %esi,-0x58(%ebp)
462365:	89 5d ac             	mov    %ebx,-0x54(%ebp)
462368:	ff 15 78 d4 48 00    	call   *0x48d478
46236e:	8b f8                	mov    %eax,%edi
462370:	85 f6                	test   %esi,%esi
462372:	74 07                	je     0x46237b
462374:	56                   	push   %esi
462375:	e8 e4 d1 fb ff       	call   0x41f55e
46237a:	59                   	pop    %ecx
46237b:	85 db                	test   %ebx,%ebx
46237d:	74 07                	je     0x462386
46237f:	53                   	push   %ebx
462380:	e8 d9 d1 fb ff       	call   0x41f55e
462385:	59                   	pop    %ecx
462386:	85 ff                	test   %edi,%edi
462388:	75 28                	jne    0x4623b2
46238a:	8b 55 f0             	mov    -0x10(%ebp),%edx
46238d:	33 db                	xor    %ebx,%ebx
46238f:	8b 02                	mov    (%edx),%eax
462391:	53                   	push   %ebx
462392:	8b 48 04             	mov    0x4(%eax),%ecx
462395:	47                   	inc    %edi
462396:	57                   	push   %edi
462397:	03 ca                	add    %edx,%ecx
462399:	e8 ae ab fe ff       	call   0x44cf4c
46239e:	8b 75 14             	mov    0x14(%ebp),%esi
4623a1:	8b ce                	mov    %esi,%ecx
4623a3:	e8 78 08 fb ff       	call   0x412c20
4623a8:	89 7e 0c             	mov    %edi,0xc(%esi)
4623ab:	89 1e                	mov    %ebx,(%esi)
4623ad:	e9 92 00 00 00       	jmp    0x462444
4623b2:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
4623b6:	74 0e                	je     0x4623c6
4623b8:	8b 55 f0             	mov    -0x10(%ebp),%edx
4623bb:	8b 45 cc             	mov    -0x34(%ebp),%eax
4623be:	89 82 70 04 00 00    	mov    %eax,0x470(%edx)
4623c4:	eb 7e                	jmp    0x462444
4623c6:	8b 75 14             	mov    0x14(%ebp),%esi
4623c9:	8b ce                	mov    %esi,%ecx
4623cb:	e8 50 08 fb ff       	call   0x412c20
4623d0:	83 0e ff             	orl    $0xffffffff,(%esi)
4623d3:	33 ff                	xor    %edi,%edi
4623d5:	47                   	inc    %edi
4623d6:	83 7d cc 00          	cmpl   $0x0,-0x34(%ebp)
4623da:	89 7e 0c             	mov    %edi,0xc(%esi)
4623dd:	74 65                	je     0x462444
4623df:	33 c0                	xor    %eax,%eax
4623e1:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4623e4:	89 45 e0             	mov    %eax,-0x20(%ebp)
4623e7:	89 45 e8             	mov    %eax,-0x18(%ebp)
4623ea:	e8 04 fe ff ff       	call   0x4621f3
4623ef:	84 c0                	test   %al,%al
4623f1:	74 39                	je     0x46242c
4623f3:	ff 75 cc             	push   -0x34(%ebp)
4623f6:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4623f9:	e8 5a d4 ff ff       	call   0x45f858
4623fe:	ff d0                	call   *%eax
462400:	89 45 08             	mov    %eax,0x8(%ebp)
462403:	db 45 08             	fildl  0x8(%ebp)
462406:	85 c0                	test   %eax,%eax
462408:	79 06                	jns    0x462410
46240a:	dc 05 00 6a 4b 00    	faddl  0x4b6a00
462410:	dd 5d ec             	fstpl  -0x14(%ebp)
462413:	8b ce                	mov    %esi,%ecx
462415:	dd 45 ec             	fldl   -0x14(%ebp)
462418:	dd 5d ec             	fstpl  -0x14(%ebp)
46241b:	e8 00 08 fb ff       	call   0x412c20
462420:	dd 45 ec             	fldl   -0x14(%ebp)
462423:	c7 46 0c 03 00 00 00 	movl   $0x3,0xc(%esi)
46242a:	dd 1e                	fstpl  (%esi)
46242c:	ff 75 cc             	push   -0x34(%ebp)
46242f:	ff 15 0c d3 48 00    	call   *0x48d30c