7ca10b:	c3                   	ret
7ca10c:	8b c1                	mov    %ecx,%eax
7ca10e:	5e                   	pop    %esi
7ca10f:	c3                   	ret
7ca110:	cc                   	int3
7ca111:	cc                   	int3
7ca112:	cc                   	int3
7ca113:	cc                   	int3
7ca114:	cc                   	int3
7ca115:	cc                   	int3
7ca116:	cc                   	int3
7ca117:	cc                   	int3
7ca118:	cc                   	int3
7ca119:	cc                   	int3
7ca11a:	cc                   	int3
7ca11b:	cc                   	int3
7ca11c:	cc                   	int3
7ca11d:	cc                   	int3
7ca11e:	cc                   	int3
7ca11f:	cc                   	int3
7ca120:	56                   	push   %esi
7ca121:	8b 74 24 08          	mov    0x8(%esp),%esi
7ca125:	85 f6                	test   %esi,%esi
7ca127:	0f 44 35 c4 e1 d5 00 	cmove  0xd5e1c4,%esi
7ca12e:	56                   	push   %esi
7ca12f:	e8 b5 0b c5 ff       	call   0x41ace9
7ca134:	83 c4 04             	add    $0x4,%esp
7ca137:	85 c0                	test   %eax,%eax
7ca139:	75 02                	jne    0x7ca13d
7ca13b:	5e                   	pop    %esi
7ca13c:	c3                   	ret
7ca13d:	8b 46 1c             	mov    0x1c(%esi),%eax
7ca140:	6a 3c                	push   $0x3c
7ca142:	56                   	push   %esi
7ca143:	ff d0                	call   *%eax
7ca145:	83 c4 08             	add    $0x8,%esp
7ca148:	85 c0                	test   %eax,%eax
7ca14a:	74 5d                	je     0x7ca1a9
7ca14c:	c7 00 60 90 7c 00    	movl   $0x7c9060,(%eax)
7ca152:	c7 40 04 a0 82 7c 00 	movl   $0x7c82a0,0x4(%eax)
7ca159:	c7 40 08 00 9b 7c 00 	movl   $0x7c9b00,0x8(%eax)
7ca160:	c7 40 14 80 84 7c 00 	movl   $0x7c8480,0x14(%eax)
7ca167:	c7 40 10 90 91 7c 00 	movl   $0x7c9190,0x10(%eax)
7ca16e:	c7 40 0c 20 81 7c 00 	movl   $0x7c8120,0xc(%eax)
7ca175:	c7 40 18 30 91 7c 00 	movl   $0x7c9130,0x18(%eax)
7ca17c:	c7 40 1c 60 84 7c 00 	movl   $0x7c8460,0x1c(%eax)
7ca183:	89 70 24             	mov    %esi,0x24(%eax)
7ca186:	c7 40 20 00 00 00 00 	movl   $0x0,0x20(%eax)
7ca18d:	c7 40 34 00 00 00 00 	movl   $0x0,0x34(%eax)
7ca194:	c7 40 28 00 80 00 00 	movl   $0x8000,0x28(%eax)
7ca19b:	c7 40 2c 00 00 00 00 	movl   $0x0,0x2c(%eax)
7ca1a2:	c7 40 30 00 10 00 00 	movl   $0x1000,0x30(%eax)
7ca1a9:	5e                   	pop    %esi
7ca1aa:	c3                   	ret
7ca1ab:	cc                   	int3
7ca1ac:	cc                   	int3
7ca1ad:	cc                   	int3
7ca1ae:	cc                   	int3
7ca1af:	cc                   	int3
7ca1b0:	cc                   	int3
7ca1b1:	cc                   	int3
7ca1b2:	cc                   	int3
7ca1b3:	cc                   	int3
7ca1b4:	cc                   	int3
7ca1b5:	cc                   	int3
7ca1b6:	cc                   	int3
7ca1b7:	cc                   	int3
7ca1b8:	cc                   	int3
7ca1b9:	cc                   	int3
7ca1ba:	cc                   	int3
7ca1bb:	cc                   	int3
7ca1bc:	cc                   	int3
7ca1bd:	cc                   	int3
7ca1be:	cc                   	int3
7ca1bf:	cc                   	int3
7ca1c0:	cc                   	int3
7ca1c1:	cc                   	int3
7ca1c2:	cc                   	int3
7ca1c3:	cc                   	int3
7ca1c4:	cc                   	int3
7ca1c5:	cc                   	int3
7ca1c6:	cc                   	int3
7ca1c7:	cc                   	int3
7ca1c8:	cc                   	int3
7ca1c9:	cc                   	int3
7ca1ca:	cc                   	int3
7ca1cb:	cc                   	int3
7ca1cc:	cc                   	int3
7ca1cd:	cc                   	int3
7ca1ce:	cc                   	int3
7ca1cf:	cc                   	int3
7ca1d0:	56                   	push   %esi
7ca1d1:	8b 74 24 08          	mov    0x8(%esp),%esi
7ca1d5:	85 f6                	test   %esi,%esi
7ca1d7:	74 36                	je     0x7ca20f
7ca1d9:	8b 46 20             	mov    0x20(%esi),%eax
7ca1dc:	57                   	push   %edi
7ca1dd:	8b 7e 24             	mov    0x24(%esi),%edi
7ca1e0:	85 c0                	test   %eax,%eax
7ca1e2:	74 21                	je     0x7ca205
7ca1e4:	8b 40 4c             	mov    0x4c(%eax),%eax
7ca1e7:	85 c0                	test   %eax,%eax
7ca1e9:	74 09                	je     0x7ca1f4
7ca1eb:	50                   	push   %eax
7ca1ec:	8b 47 04             	mov    0x4(%edi),%eax
7ca1ef:	ff d0                	call   *%eax
7ca1f1:	83 c4 04             	add    $0x4,%esp
7ca1f4:	56                   	push   %esi
7ca1f5:	e8 96 e9 ff ff       	call   0x7c8b90
7ca1fa:	ff 76 20             	push   0x20(%esi)
7ca1fd:	8b 47 20             	mov    0x20(%edi),%eax
7ca200:	ff d0                	call   *%eax
7ca202:	83 c4 08             	add    $0x8,%esp
7ca205:	8b 47 20             	mov    0x20(%edi),%eax
7ca208:	56                   	push   %esi
7ca209:	ff d0                	call   *%eax
7ca20b:	83 c4 04             	add    $0x4,%esp
7ca20e:	5f                   	pop    %edi
7ca20f:	5e                   	pop    %esi
7ca210:	c3                   	ret
7ca211:	cc                   	int3
7ca212:	cc                   	int3
7ca213:	cc                   	int3
7ca214:	cc                   	int3
7ca215:	cc                   	int3
7ca216:	cc                   	int3
7ca217:	cc                   	int3
7ca218:	cc                   	int3
7ca219:	cc                   	int3
7ca21a:	cc                   	int3
7ca21b:	cc                   	int3
7ca21c:	cc                   	int3
7ca21d:	cc                   	int3
7ca21e:	cc                   	int3
7ca21f:	cc                   	int3
7ca220:	cc                   	int3
7ca221:	cc                   	int3
7ca222:	cc                   	int3
7ca223:	cc                   	int3
7ca224:	cc                   	int3
7ca225:	cc                   	int3
7ca226:	cc                   	int3
7ca227:	cc                   	int3
7ca228:	cc                   	int3
7ca229:	cc                   	int3
7ca22a:	cc                   	int3
7ca22b:	cc                   	int3
7ca22c:	cc                   	int3
7ca22d:	cc                   	int3
7ca22e:	cc                   	int3
7ca22f:	cc                   	int3
7ca230:	53                   	push   %ebx
7ca231:	56                   	push   %esi
7ca232:	8b 74 24 10          	mov    0x10(%esp),%esi
7ca236:	57                   	push   %edi
7ca237:	85 f6                	test   %esi,%esi
7ca239:	7e 3e                	jle    0x7ca279
7ca23b:	8b 5c 24 10          	mov    0x10(%esp),%ebx
7ca23f:	90                   	nop
7ca240:	3b 73 10             	cmp    0x10(%ebx),%esi
7ca243:	8b fe                	mov    %esi,%edi
7ca245:	8b 03                	mov    (%ebx),%eax
7ca247:	0f 4f 7b 10          	cmovg  0x10(%ebx),%edi
7ca24b:	57                   	push   %edi
7ca24c:	ff 73 0c             	push   0xc(%ebx)
7ca24f:	8b 40 08             	mov    0x8(%eax),%eax
7ca252:	ff 73 04             	push   0x4(%ebx)
7ca255:	ff d0                	call   *%eax
7ca257:	83 c4 0c             	add    $0xc,%esp
7ca25a:	3b c7                	cmp    %edi,%eax
7ca25c:	75 2a                	jne    0x7ca288
7ca25e:	8b 03                	mov    (%ebx),%eax
7ca260:	57                   	push   %edi
7ca261:	ff 73 0c             	push   0xc(%ebx)
7ca264:	ff 73 08             	push   0x8(%ebx)
7ca267:	8b 40 0c             	mov    0xc(%eax),%eax
7ca26a:	ff d0                	call   *%eax
7ca26c:	83 c4 0c             	add    $0xc,%esp
7ca26f:	3b c7                	cmp    %edi,%eax
7ca271:	75 0c                	jne    0x7ca27f
7ca273:	2b f7                	sub    %edi,%esi
7ca275:	85 f6                	test   %esi,%esi
7ca277:	7f c7                	jg     0x7ca240
7ca279:	5f                   	pop    %edi
7ca27a:	5e                   	pop    %esi
7ca27b:	33 c0                	xor    %eax,%eax
7ca27d:	5b                   	pop    %ebx
7ca27e:	c3                   	ret
7ca27f:	5f                   	pop    %edi
7ca280:	5e                   	pop    %esi
7ca281:	b8 04 00 00 00       	mov    $0x4,%eax
7ca286:	5b                   	pop    %ebx
7ca287:	c3                   	ret
7ca288:	5f                   	pop    %edi
7ca289:	5e                   	pop    %esi
7ca28a:	b8 03 00 00 00       	mov    $0x3,%eax
7ca28f:	5b                   	pop    %ebx
7ca290:	c3                   	ret
7ca291:	cc                   	int3
7ca292:	cc                   	int3
7ca293:	cc                   	int3
7ca294:	cc                   	int3
7ca295:	cc                   	int3
7ca296:	cc                   	int3
7ca297:	cc                   	int3
7ca298:	cc                   	int3
7ca299:	cc                   	int3
7ca29a:	cc                   	int3
7ca29b:	cc                   	int3
7ca29c:	cc                   	int3
7ca29d:	cc                   	int3
7ca29e:	cc                   	int3
7ca29f:	cc                   	int3
7ca2a0:	cc                   	int3
7ca2a1:	cc                   	int3
7ca2a2:	cc                   	int3
7ca2a3:	cc                   	int3
7ca2a4:	cc                   	int3
7ca2a5:	cc                   	int3
7ca2a6:	cc                   	int3
7ca2a7:	cc                   	int3
7ca2a8:	cc                   	int3
7ca2a9:	cc                   	int3
7ca2aa:	cc                   	int3
7ca2ab:	cc                   	int3
7ca2ac:	cc                   	int3
7ca2ad:	cc                   	int3
7ca2ae:	cc                   	int3
7ca2af:	cc                   	int3
7ca2b0:	57                   	push   %edi
7ca2b1:	8b 7c 24 08          	mov    0x8(%esp),%edi
7ca2b5:	85 ff                	test   %edi,%edi
7ca2b7:	74 15                	je     0x7ca2ce
7ca2b9:	56                   	push   %esi
7ca2ba:	8b 37                	mov    (%edi),%esi
7ca2bc:	ff 77 0c             	push   0xc(%edi)
7ca2bf:	8b 46 20             	mov    0x20(%esi),%eax
7ca2c2:	ff d0                	call   *%eax
7ca2c4:	8b 46 20             	mov    0x20(%esi),%eax
7ca2c7:	57                   	push   %edi
7ca2c8:	ff d0                	call   *%eax
7ca2ca:	83 c4 08             	add    $0x8,%esp
7ca2cd:	5e                   	pop    %esi
7ca2ce:	5f                   	pop    %edi
7ca2cf:	c3                   	ret
7ca2d0:	cc                   	int3
7ca2d1:	cc                   	int3
7ca2d2:	cc                   	int3
7ca2d3:	cc                   	int3
7ca2d4:	cc                   	int3
7ca2d5:	cc                   	int3
7ca2d6:	cc                   	int3
7ca2d7:	cc                   	int3
7ca2d8:	cc                   	int3
7ca2d9:	cc                   	int3
7ca2da:	cc                   	int3
7ca2db:	cc                   	int3
7ca2dc:	cc                   	int3
7ca2dd:	cc                   	int3
7ca2de:	cc                   	int3
7ca2df:	cc                   	int3
7ca2e0:	53                   	push   %ebx
7ca2e1:	56                   	push   %esi
7ca2e2:	57                   	push   %edi
7ca2e3:	8b 7c 24 10          	mov    0x10(%esp),%edi
7ca2e7:	6a 14                	push   $0x14
7ca2e9:	57                   	push   %edi
7ca2ea:	8b 47 1c             	mov    0x1c(%edi),%eax
7ca2ed:	ff d0                	call   *%eax
7ca2ef:	8b 5c 24 24          	mov    0x24(%esp),%ebx
7ca2f3:	8b f0                	mov    %eax,%esi
7ca2f5:	8b 4f 1c             	mov    0x1c(%edi),%ecx
7ca2f8:	53                   	push   %ebx
7ca2f9:	57                   	push   %edi
7ca2fa:	ff d1                	call   *%ecx
7ca2fc:	83 c4 10             	add    $0x10,%esp
7ca2ff:	8b d0                	mov    %eax,%edx
7ca301:	85 f6                	test   %esi,%esi
7ca303:	74 20                	je     0x7ca325
7ca305:	85 d2                	test   %edx,%edx
7ca307:	74 1c                	je     0x7ca325
7ca309:	8b 44 24 18          	mov    0x18(%esp),%eax
7ca30d:	8b 4c 24 14          	mov    0x14(%esp),%ecx
7ca311:	89 3e                	mov    %edi,(%esi)
7ca313:	89 46 08             	mov    %eax,0x8(%esi)
7ca316:	8b c6                	mov    %esi,%eax
7ca318:	5f                   	pop    %edi
7ca319:	89 5e 10             	mov    %ebx,0x10(%esi)
7ca31c:	89 4e 04             	mov    %ecx,0x4(%esi)
7ca31f:	89 56 0c             	mov    %edx,0xc(%esi)
7ca322:	5e                   	pop    %esi
7ca323:	5b                   	pop    %ebx
7ca324:	c3                   	ret
7ca325:	8b 47 20             	mov    0x20(%edi),%eax
7ca328:	52                   	push   %edx
7ca329:	ff d0                	call   *%eax
7ca32b:	8b 47 20             	mov    0x20(%edi),%eax
7ca32e:	56                   	push   %esi
7ca32f:	ff d0                	call   *%eax
7ca331:	83 c4 08             	add    $0x8,%esp
7ca334:	33 c0                	xor    %eax,%eax
7ca336:	5f                   	pop    %edi
7ca337:	5e                   	pop    %esi
7ca338:	5b                   	pop    %ebx
7ca339:	c3                   	ret
7ca33a:	cc                   	int3
7ca33b:	cc                   	int3
7ca33c:	cc                   	int3
7ca33d:	cc                   	int3
7ca33e:	cc                   	int3
7ca33f:	cc                   	int3
7ca340:	cc                   	int3
7ca341:	cc                   	int3
7ca342:	cc                   	int3
7ca343:	cc                   	int3
7ca344:	cc                   	int3
7ca345:	cc                   	int3
7ca346:	cc                   	int3
7ca347:	cc                   	int3
7ca348:	cc                   	int3
7ca349:	cc                   	int3
7ca34a:	cc                   	int3
7ca34b:	cc                   	int3
7ca34c:	cc                   	int3
7ca34d:	cc                   	int3
7ca34e:	cc                   	int3
7ca34f:	cc                   	int3
7ca350:	8b 44 24 0c          	mov    0xc(%esp),%eax
7ca354:	56                   	push   %esi
7ca355:	83 f8 03             	cmp    $0x3,%eax
7ca358:	77 5c                	ja     0x7ca3b6
7ca35a:	ff 24 85 bc a3 7c 00 	jmp    *0x7ca3bc(,%eax,4)
7ca361:	be 20 c1 bd 00       	mov    $0xbdc120,%esi
7ca366:	eb 13                	jmp    0x7ca37b
7ca368:	be 04 c1 bd 00       	mov    $0xbdc104,%esi
7ca36d:	eb 0c                	jmp    0x7ca37b
7ca36f:	be 18 c1 c2 00       	mov    $0xc2c118,%esi
7ca374:	eb 05                	jmp    0x7ca37b
7ca376:	be f8 1e bf 00       	mov    $0xbf1ef8,%esi
7ca37b:	57                   	push   %edi
7ca37c:	6a 08                	push   $0x8
7ca37e:	e8 30 a9 c4 ff       	call   0x414cb3
7ca383:	8b f8                	mov    %eax,%edi
7ca385:	83 c4 04             	add    $0x4,%esp
7ca388:	85 ff                	test   %edi,%edi
7ca38a:	74 25                	je     0x7ca3b1
7ca38c:	8b 4c 24 10          	mov    0x10(%esp),%ecx
7ca390:	56                   	push   %esi
7ca391:	51                   	push   %ecx
7ca392:	89 4f 04             	mov    %ecx,0x4(%edi)