412022:	ff 15 20 a5 43 00    	call   *0x43a520
412028:	ff d6                	call   *%esi
41202a:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
41202e:	8b d8                	mov    %eax,%ebx
412030:	c7 85 28 ff ff ff 00 	movl   $0x0,-0xd8(%ebp)
412037:	00 00 00
41203a:	74 2a                	je     0x412066
41203c:	8b 8d 18 ff ff ff    	mov    -0xe8(%ebp),%ecx
412042:	8d 95 28 ff ff ff    	lea    -0xd8(%ebp),%edx
412048:	52                   	push   %edx
412049:	51                   	push   %ecx
41204a:	8b 01                	mov    (%ecx),%eax
41204c:	8b 70 10             	mov    0x10(%eax),%esi
41204f:	8b ce                	mov    %esi,%ecx
412051:	ff 15 20 a5 43 00    	call   *0x43a520
412057:	ff d6                	call   *%esi
412059:	83 bd 28 ff ff ff 00 	cmpl   $0x0,-0xd8(%ebp)
412060:	0f 85 e1 f2 00 00    	jne    0x421347
412066:	8b 45 1c             	mov    0x1c(%ebp),%eax
412069:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
41206d:	0f 85 e6 f2 00 00    	jne    0x421359
412073:	85 db                	test   %ebx,%ebx
412075:	0f 88 e8 f2 00 00    	js     0x421363
41207b:	8b 45 ec             	mov    -0x14(%ebp),%eax
41207e:	3b 05 6c 4e 40 00    	cmp    0x404e6c,%eax
412084:	0f 84 6c 06 00 00    	je     0x4126f6
41208a:	c7 45 a8 00 00 00 00 	movl   $0x0,-0x58(%ebp)
412091:	c7 45 b4 00 00 00 00 	movl   $0x0,-0x4c(%ebp)
412098:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
41209f:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
4120a6:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
4120ad:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
4120b4:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
4120bb:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
4120c2:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
4120c9:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
4120d0:	c7 45 ac 02 00 00 00 	movl   $0x2,-0x54(%ebp)
4120d7:	c7 45 b0 02 00 00 00 	movl   $0x2,-0x50(%ebp)
4120de:	c7 45 c8 01 00 00 00 	movl   $0x1,-0x38(%ebp)
4120e5:	ff 15 88 a1 43 00    	call   *0x43a188
4120eb:	8b 7d ec             	mov    -0x14(%ebp),%edi
4120ee:	89 45 b4             	mov    %eax,-0x4c(%ebp)
4120f1:	83 ff 64             	cmp    $0x64,%edi
4120f4:	0f 84 8d 05 00 00    	je     0x412687
4120fa:	83 ff 06             	cmp    $0x6,%edi
4120fd:	0f 84 0d 06 00 00    	je     0x412710
412103:	8b 45 dc             	mov    -0x24(%ebp),%eax
412106:	8d 55 b8             	lea    -0x48(%ebp),%edx
412109:	89 45 b8             	mov    %eax,-0x48(%ebp)
41210c:	8d 8d 04 ff ff ff    	lea    -0xfc(%ebp),%ecx
412112:	8b 45 e0             	mov    -0x20(%ebp),%eax
412115:	33 db                	xor    %ebx,%ebx
412117:	89 45 bc             	mov    %eax,-0x44(%ebp)
41211a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41211d:	89 45 c0             	mov    %eax,-0x40(%ebp)
412120:	8b 45 e8             	mov    -0x18(%ebp),%eax
412123:	6a 01                	push   $0x1
412125:	89 45 c4             	mov    %eax,-0x3c(%ebp)
412128:	89 7d cc             	mov    %edi,-0x34(%ebp)
41212b:	e8 10 10 00 00       	call   0x413140
412130:	85 c0                	test   %eax,%eax
412132:	0f 84 9a 04 00 00    	je     0x4125d2
412138:	b8 03 00 00 00       	mov    $0x3,%eax
41213d:	66 3b 85 04 ff ff ff 	cmp    -0xfc(%ebp),%ax
412144:	0f 84 45 06 00 00    	je     0x41278f
41214a:	8d 8d 04 ff ff ff    	lea    -0xfc(%ebp),%ecx
412150:	e8 db 0e 00 00       	call   0x413030
412155:	85 c0                	test   %eax,%eax
412157:	0f 88 92 f2 00 00    	js     0x4213ef
41215d:	8b 95 20 ff ff ff    	mov    -0xe0(%ebp),%edx
412163:	33 ff                	xor    %edi,%edi
412165:	c7 85 34 ff ff ff 21 	movl   $0x21,-0xcc(%ebp)
41216c:	00 00 00
41216f:	89 bd 38 ff ff ff    	mov    %edi,-0xc8(%ebp)
412175:	c7 85 2c ff ff ff 64 	movl   $0x401164,-0xd4(%ebp)
41217c:	11 40 00
41217f:	8b 82 8c 09 00 00    	mov    0x98c(%edx),%eax
412185:	89 45 a8             	mov    %eax,-0x58(%ebp)
412188:	40                   	inc    %eax
412189:	89 82 8c 09 00 00    	mov    %eax,0x98c(%edx)
41218f:	8d 85 3c ff ff ff    	lea    -0xc4(%ebp),%eax
412195:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
41219b:	33 c0                	xor    %eax,%eax
41219d:	66 89 85 3c ff ff ff 	mov    %ax,-0xc4(%ebp)
4121a4:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
4121a8:	39 45 c8             	cmp    %eax,-0x38(%ebp)
4121ab:	0f 84 50 f2 00 00    	je     0x421401
4121b1:	83 ba c4 09 00 00 00 	cmpl   $0x0,0x9c4(%edx)
4121b8:	8d b2 b8 09 00 00    	lea    0x9b8(%edx),%esi
4121be:	75 19                	jne    0x4121d9
4121c0:	8b 06                	mov    (%esi),%eax
4121c2:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
4121c9:	89 46 04             	mov    %eax,0x4(%esi)
4121cc:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
4121d2:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
4121d9:	b9 02 00 00 00       	mov    $0x2,%ecx
4121de:	33 db                	xor    %ebx,%ebx
4121e0:	89 8d 24 ff ff ff    	mov    %ecx,-0xdc(%ebp)
4121e6:	85 db                	test   %ebx,%ebx
4121e8:	0f 88 50 01 00 00    	js     0x41233e
4121ee:	8b 82 90 09 00 00    	mov    0x990(%edx),%eax
4121f4:	33 db                	xor    %ebx,%ebx
4121f6:	89 45 a0             	mov    %eax,-0x60(%ebp)
4121f9:	40                   	inc    %eax
4121fa:	89 82 90 09 00 00    	mov    %eax,0x990(%edx)
412200:	c7 45 a4 00 00 00 00 	movl   $0x0,-0x5c(%ebp)
412207:	c7 45 94 47 54 48 52 	movl   $0x52485447,-0x6c(%ebp)
41220e:	c7 45 98 00 00 00 00 	movl   $0x0,-0x68(%ebp)
412215:	c7 45 9c 00 00 00 00 	movl   $0x0,-0x64(%ebp)
41221c:	39 5e 08             	cmp    %ebx,0x8(%esi)
41221f:	0f 84 12 04 00 00    	je     0x412637
412225:	89 1e                	mov    %ebx,(%esi)
412227:	8b 5e 10             	mov    0x10(%esi),%ebx
41222a:	89 bd ec fe ff ff    	mov    %edi,-0x114(%ebp)
412230:	6a 00                	push   $0x0
412232:	6a 04                	push   $0x4
412234:	8b 03                	mov    (%ebx),%eax
412236:	8b 40 04             	mov    0x4(%eax),%eax
412239:	89 85 28 ff ff ff    	mov    %eax,-0xd8(%ebp)
41223f:	3d 70 2d 41 00       	cmp    $0x412d70,%eax
412244:	0f 85 d4 f1 00 00    	jne    0x42141e
41224a:	8d 85 ec fe ff ff    	lea    -0x114(%ebp),%eax
412250:	8b cb                	mov    %ebx,%ecx
412252:	50                   	push   %eax
412253:	e8 18 0b 00 00       	call   0x412d70
412258:	8b d8                	mov    %eax,%ebx
41225a:	8b 06                	mov    (%esi),%eax
41225c:	85 db                	test   %ebx,%ebx
41225e:	78 59                	js     0x4122b9
412260:	83 c0 04             	add    $0x4,%eax
412263:	89 06                	mov    %eax,(%esi)
412265:	85 db                	test   %ebx,%ebx
412267:	78 50                	js     0x4122b9
412269:	8d 48 03             	lea    0x3(%eax),%ecx
41226c:	33 db                	xor    %ebx,%ebx
41226e:	83 e1 fc             	and    $0xfffffffc,%ecx
412271:	f7 d7                	not    %edi
412273:	2b c8                	sub    %eax,%ecx
412275:	89 bd e8 fe ff ff    	mov    %edi,-0x118(%ebp)
41227b:	89 8d 28 ff ff ff    	mov    %ecx,-0xd8(%ebp)
412281:	0f 85 b3 f1 00 00    	jne    0x42143a
412287:	03 c1                	add    %ecx,%eax
412289:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
41228d:	89 06                	mov    %eax,(%esi)
41228f:	74 28                	je     0x4122b9
412291:	8b 7e 10             	mov    0x10(%esi),%edi
412294:	6a 00                	push   $0x0
412296:	6a 04                	push   $0x4
412298:	8b 07                	mov    (%edi),%eax
41229a:	8b 58 04             	mov    0x4(%eax),%ebx
41229d:	8d 85 e8 fe ff ff    	lea    -0x118(%ebp),%eax
4122a3:	50                   	push   %eax
4122a4:	81 fb 70 2d 41 00    	cmp    $0x412d70,%ebx
4122aa:	0f 85 c6 f1 00 00    	jne    0x421476
4122b0:	8b cf                	mov    %edi,%ecx
4122b2:	e8 b9 0a 00 00       	call   0x412d70
4122b7:	8b d8                	mov    %eax,%ebx
4122b9:	33 c0                	xor    %eax,%eax
4122bb:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
4122c1:	85 db                	test   %ebx,%ebx
4122c3:	78 4e                	js     0x412313
4122c5:	8d 48 07             	lea    0x7(%eax),%ecx
4122c8:	83 e1 f8             	and    $0xfffffff8,%ecx
4122cb:	2b c8                	sub    %eax,%ecx
4122cd:	89 8d 28 ff ff ff    	mov    %ecx,-0xd8(%ebp)
4122d3:	0f 85 ae f1 00 00    	jne    0x421487
4122d9:	85 db                	test   %ebx,%ebx
4122db:	78 55                	js     0x412332
4122dd:	03 c1                	add    %ecx,%eax
4122df:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
4122e3:	89 06                	mov    %eax,(%esi)
4122e5:	74 25                	je     0x41230c
4122e7:	8b 7e 10             	mov    0x10(%esi),%edi
4122ea:	6a 00                	push   $0x0
4122ec:	6a 14                	push   $0x14
4122ee:	8b 07                	mov    (%edi),%eax
4122f0:	8b 58 04             	mov    0x4(%eax),%ebx
4122f3:	8d 45 94             	lea    -0x6c(%ebp),%eax
4122f6:	50                   	push   %eax
4122f7:	81 fb 70 2d 41 00    	cmp    $0x412d70,%ebx
4122fd:	0f 85 b9 f1 00 00    	jne    0x4214bc
412303:	8b cf                	mov    %edi,%ecx
412305:	e8 66 0a 00 00       	call   0x412d70
41230a:	8b d8                	mov    %eax,%ebx
41230c:	85 db                	test   %ebx,%ebx
41230e:	78 22                	js     0x412332
412310:	83 06 14             	addl   $0x14,(%esi)
412313:	85 db                	test   %ebx,%ebx
412315:	78 1b                	js     0x412332
412317:	8d 45 a8             	lea    -0x58(%ebp),%eax
41231a:	8b ce                	mov    %esi,%ecx
41231c:	50                   	push   %eax
41231d:	e8 8b b7 00 00       	call   0x41daad
412322:	8b d8                	mov    %eax,%ebx
412324:	85 db                	test   %ebx,%ebx
412326:	78 0a                	js     0x412332
412328:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
41232c:	0f 84 9b f1 00 00    	je     0x4214cd
412332:	8b 95 20 ff ff ff    	mov    -0xe0(%ebp),%edx
412338:	8b 8d 24 ff ff ff    	mov    -0xdc(%ebp),%ecx
41233e:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
412342:	8b 3e                	mov    (%esi),%edi
412344:	74 1a                	je     0x412360
412346:	8b 46 04             	mov    0x4(%esi),%eax
412349:	c7 46 08 01 00 00 00 	movl   $0x1,0x8(%esi)
412350:	89 06                	mov    %eax,(%esi)
412352:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
412359:	c7 46 0c 00 00 00 00 	movl   $0x0,0xc(%esi)
412360:	83 e9 01             	sub    $0x1,%ecx
412363:	89 8d 24 ff ff ff    	mov    %ecx,-0xdc(%ebp)
412369:	0f 85 77 fe ff ff    	jne    0x4121e6
41236f:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
412373:	8b 85 30 ff ff ff    	mov    -0xd0(%ebp),%eax
412379:	c7 85 2c ff ff ff 64 	movl   $0x401164,-0xd4(%ebp)
412380:	11 40 00
412383:	85 c0                	test   %eax,%eax
412385:	74 0e                	je     0x412395
412387:	8d 8d 3c ff ff ff    	lea    -0xc4(%ebp),%ecx
41238d:	3b c1                	cmp    %ecx,%eax
41238f:	0f 85 74 f1 00 00    	jne    0x421509
412395:	c7 85 2c ff ff ff 80 	movl   $0x401180,-0xd4(%ebp)
41239c:	11 40 00
41239f:	85 db                	test   %ebx,%ebx
4123a1:	0f 88 2b 02 00 00    	js     0x4125d2
4123a7:	8b 85 04 ff ff ff    	mov    -0xfc(%ebp),%eax
4123ad:	25 ff 0f 00 00       	and    $0xfff,%eax
4123b2:	83 f8 1f             	cmp    $0x1f,%eax
4123b5:	0f 85 ac 02 00 00    	jne    0x412667
4123bb:	8d 8d 04 ff ff ff    	lea    -0xfc(%ebp),%ecx
4123c1:	e8 6a 0c 00 00       	call   0x413030
4123c6:	85 c0                	test   %eax,%eax
4123c8:	0f 88 58 f1 00 00    	js     0x421526
4123ce:	66 8b 85 04 ff ff ff 	mov    -0xfc(%ebp),%ax
4123d5:	83 bd 0c ff ff ff 00 	cmpl   $0x0,-0xf4(%ebp)
4123dc:	0f 84 63 02 00 00    	je     0x412645
4123e2:	33 ff                	xor    %edi,%edi
4123e4:	39 7e 0c             	cmp    %edi,0xc(%esi)
4123e7:	75 11                	jne    0x4123fa
4123e9:	8b 06                	mov    (%esi),%eax
4123eb:	89 7e 08             	mov    %edi,0x8(%esi)
4123ee:	89 46 04             	mov    %eax,0x4(%esi)
4123f1:	89 3e                	mov    %edi,(%esi)
4123f3:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
4123fa:	b9 02 00 00 00       	mov    $0x2,%ecx
4123ff:	33 db                	xor    %ebx,%ebx
412401:	89 8d 24 ff ff ff    	mov    %ecx,-0xdc(%ebp)
412407:	85 db                	test   %ebx,%ebx
412409:	0f 88 49 01 00 00    	js     0x412558
41240f:	8b 8d 20 ff ff ff    	mov    -0xe0(%ebp),%ecx
412415:	33 db                	xor    %ebx,%ebx
412417:	c7 45 90 00 00 00 00 	movl   $0x0,-0x70(%ebp)
41241e:	c7 45 80 47 54 48 52 	movl   $0x52485447,-0x80(%ebp)
412425:	c7 45 84 00 00 00 00 	movl   $0x0,-0x7c(%ebp)
41242c:	8b 81 90 09 00 00    	mov    0x990(%ecx),%eax
412432:	89 45 8c             	mov    %eax,-0x74(%ebp)
412435:	40                   	inc    %eax
412436:	89 81 90 09 00 00    	mov    %eax,0x990(%ecx)
41243c:	c7 45 88 02 00 00 00 	movl   $0x2,-0x78(%ebp)
412443:	39 5e 08             	cmp    %ebx,0x8(%esi)
412446:	0f 84 f2 01 00 00    	je     0x41263e
41244c:	89 1e                	mov    %ebx,(%esi)
41244e:	8b 5e 10             	mov    0x10(%esi),%ebx
412451:	89 bd e4 fe ff ff    	mov    %edi,-0x11c(%ebp)
412457:	6a 00                	push   $0x0
412459:	6a 04                	push   $0x4
41245b:	8b 03                	mov    (%ebx),%eax
41245d:	8b 40 04             	mov    0x4(%eax),%eax
412460:	89 85 28 ff ff ff    	mov    %eax,-0xd8(%ebp)
412466:	3d 70 2d 41 00       	cmp    $0x412d70,%eax
41246b:	0f 85 df f0 00 00    	jne    0x421550
412471:	8d 85 e4 fe ff ff    	lea    -0x11c(%ebp),%eax
412477:	8b cb                	mov    %ebx,%ecx
412479:	50                   	push   %eax
41247a:	e8 f1 08 00 00       	call   0x412d70
41247f:	8b d8                	mov    %eax,%ebx
412481:	8b 06                	mov    (%esi),%eax
412483:	85 db                	test   %ebx,%ebx
412485:	78 59                	js     0x4124e0
412487:	83 c0 04             	add    $0x4,%eax
41248a:	89 06                	mov    %eax,(%esi)
41248c:	85 db                	test   %ebx,%ebx
41248e:	78 50                	js     0x4124e0
412490:	8d 48 03             	lea    0x3(%eax),%ecx
412493:	33 db                	xor    %ebx,%ebx
412495:	83 e1 fc             	and    $0xfffffffc,%ecx
412498:	f7 d7                	not    %edi
41249a:	2b c8                	sub    %eax,%ecx
41249c:	89 bd e0 fe ff ff    	mov    %edi,-0x120(%ebp)
4124a2:	89 8d 28 ff ff ff    	mov    %ecx,-0xd8(%ebp)
4124a8:	0f 85 be f0 00 00    	jne    0x42156c
4124ae:	03 c1                	add    %ecx,%eax
4124b0:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
4124b4:	89 06                	mov    %eax,(%esi)
4124b6:	74 28                	je     0x4124e0
4124b8:	8b 7e 10             	mov    0x10(%esi),%edi
4124bb:	6a 00                	push   $0x0
4124bd:	6a 04                	push   $0x4
4124bf:	8b 07                	mov    (%edi),%eax
4124c1:	8b 58 04             	mov    0x4(%eax),%ebx
4124c4:	8d 85 e0 fe ff ff    	lea    -0x120(%ebp),%eax
4124ca:	50                   	push   %eax
4124cb:	81 fb 70 2d 41 00    	cmp    $0x412d70,%ebx
4124d1:	0f 85 d1 f0 00 00    	jne    0x4215a8
4124d7:	8b cf                	mov    %edi,%ecx
4124d9:	e8 92 08 00 00       	call   0x412d70
4124de:	8b d8                	mov    %eax,%ebx
4124e0:	33 c0                	xor    %eax,%eax
4124e2:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
4124e8:	85 db                	test   %ebx,%ebx
4124ea:	78 66                	js     0x412552
4124ec:	8d 48 07             	lea    0x7(%eax),%ecx
4124ef:	83 e1 f8             	and    $0xfffffff8,%ecx
4124f2:	2b c8                	sub    %eax,%ecx
4124f4:	89 8d 28 ff ff ff    	mov    %ecx,-0xd8(%ebp)
4124fa:	0f 85 b9 f0 00 00    	jne    0x4215b9
412500:	85 db                	test   %ebx,%ebx
412502:	78 4e                	js     0x412552
412504:	03 c1                	add    %ecx,%eax
412506:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
41250a:	89 06                	mov    %eax,(%esi)
41250c:	74 25                	je     0x412533
41250e:	8b 7e 10             	mov    0x10(%esi),%edi
412511:	6a 00                	push   $0x0
412513:	6a 14                	push   $0x14
412515:	8b 07                	mov    (%edi),%eax
412517:	8b 58 04             	mov    0x4(%eax),%ebx
41251a:	8d 45 80             	lea    -0x80(%ebp),%eax
41251d:	50                   	push   %eax
41251e:	81 fb 70 2d 41 00    	cmp    $0x412d70,%ebx
412524:	0f 85 c4 f0 00 00    	jne    0x4215ee
41252a:	8b cf                	mov    %edi,%ecx
41252c:	e8 3f 08 00 00       	call   0x412d70
412531:	8b d8                	mov    %eax,%ebx
412533:	85 db                	test   %ebx,%ebx
412535:	78 1b                	js     0x412552
412537:	83 06 14             	addl   $0x14,(%esi)
41253a:	85 db                	test   %ebx,%ebx
41253c:	78 14                	js     0x412552
41253e:	8b 8d 20 ff ff ff    	mov    -0xe0(%ebp),%ecx
412544:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
41254a:	50                   	push   %eax
41254b:	e8 10 d6 ff ff       	call   0x40fb60
412550:	8b d8                	mov    %eax,%ebx
412552:	8b 8d 24 ff ff ff    	mov    -0xdc(%ebp),%ecx
412558:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
41255c:	8b 3e                	mov    (%esi),%edi
41255e:	74 1a                	je     0x41257a
412560:	8b 46 04             	mov    0x4(%esi),%eax
412563:	c7 46 08 01 00 00 00 	movl   $0x1,0x8(%esi)
41256a:	89 06                	mov    %eax,(%esi)