53617f:	ff 75 b4             	push   -0x4c(%ebp)
536182:	8d 4d 88             	lea    -0x78(%ebp),%ecx
536185:	ff 75 94             	push   -0x6c(%ebp)
536188:	51                   	push   %ecx
536189:	6a 00                	push   $0x0
53618b:	6a 00                	push   $0x0
53618d:	ff 75 cc             	push   -0x34(%ebp)
536190:	53                   	push   %ebx
536191:	50                   	push   %eax
536192:	e8 b9 63 ff ff       	call   0x52c550
536197:	8b 4d b0             	mov    -0x50(%ebp),%ecx
53619a:	03 4d a0             	add    -0x60(%ebp),%ecx
53619d:	6a 01                	push   $0x1
53619f:	51                   	push   %ecx
5361a0:	6a 52                	push   $0x52
5361a2:	56                   	push   %esi
5361a3:	89 45 b4             	mov    %eax,-0x4c(%ebp)
5361a6:	89 5d 94             	mov    %ebx,-0x6c(%ebp)
5361a9:	e8 32 b9 00 00       	call   0x541ae0
5361ae:	0f b7 4b 34          	movzwl 0x34(%ebx),%ecx
5361b2:	51                   	push   %ecx
5361b3:	ff 75 b4             	push   -0x4c(%ebp)
5361b6:	57                   	push   %edi
5361b7:	ff 75 b0             	push   -0x50(%ebp)
5361ba:	6a 1e                	push   $0x1e
5361bc:	56                   	push   %esi
5361bd:	e8 4e ba 00 00       	call   0x541c10
5361c2:	8b 56 6c             	mov    0x6c(%esi),%edx
5361c5:	83 c4 48             	add    $0x48,%esp
5361c8:	8b f8                	mov    %eax,%edi
5361ca:	39 56 70             	cmp    %edx,0x70(%esi)
5361cd:	7f 15                	jg     0x5361e4
5361cf:	6a 00                	push   $0x0
5361d1:	6a 03                	push   $0x3
5361d3:	6a 00                	push   $0x0
5361d5:	6a 73                	push   $0x73
5361d7:	56                   	push   %esi
5361d8:	e8 23 03 fd ff       	call   0x506500
5361dd:	83 c4 14             	add    $0x14,%esp
5361e0:	8b d0                	mov    %eax,%edx
5361e2:	eb 36                	jmp    0x53621a
5361e4:	8b 5d c0             	mov    -0x40(%ebp),%ebx
5361e7:	8d 42 01             	lea    0x1(%edx),%eax
5361ea:	89 46 6c             	mov    %eax,0x6c(%esi)
5361ed:	8d 0c 92             	lea    (%edx,%edx,4),%ecx
5361f0:	8b 46 68             	mov    0x68(%esi),%eax
5361f3:	c7 04 88 73 00 00 00 	movl   $0x73,(%eax,%ecx,4)
5361fa:	c7 44 88 04 00 00 00 	movl   $0x0,0x4(%eax,%ecx,4)
536201:	00
536202:	c7 44 88 08 03 00 00 	movl   $0x3,0x8(%eax,%ecx,4)
536209:	00
53620a:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
536211:	00
536212:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
536219:	00
53621a:	8b 06                	mov    (%esi),%eax
53621c:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
536220:	74 12                	je     0x536234
536222:	68 40 ac 6b 00       	push   $0x6bac40
536227:	6a 00                	push   $0x0
536229:	50                   	push   %eax
53622a:	e8 81 da fc ff       	call   0x503cb0
53622f:	83 c4 0c             	add    $0xc,%esp
536232:	eb 22                	jmp    0x536256
536234:	85 d2                	test   %edx,%edx
536236:	79 04                	jns    0x53623c
536238:	8b 56 6c             	mov    0x6c(%esi),%edx
53623b:	4a                   	dec    %edx
53623c:	8b 46 68             	mov    0x68(%esi),%eax
53623f:	8d 0c 92             	lea    (%edx,%edx,4),%ecx
536242:	6a 00                	push   $0x0
536244:	68 40 ac 6b 00       	push   $0x6bac40
536249:	8d 04 88             	lea    (%eax,%ecx,4),%eax
53624c:	50                   	push   %eax
53624d:	56                   	push   %esi
53624e:	e8 ed 39 02 00       	call   0x559c40
536253:	83 c4 10             	add    $0x10,%esp
536256:	6a 03                	push   $0x3
536258:	6a 03                	push   $0x3
53625a:	6a 07                	push   $0x7
53625c:	6a 6e                	push   $0x6e
53625e:	56                   	push   %esi
53625f:	e8 dc b8 00 00       	call   0x541b40
536264:	8b 56 6c             	mov    0x6c(%esi),%edx
536267:	83 c4 14             	add    $0x14,%esp
53626a:	39 56 70             	cmp    %edx,0x70(%esi)
53626d:	7f 15                	jg     0x536284
53626f:	6a 00                	push   $0x0
536271:	6a 04                	push   $0x4
536273:	6a 00                	push   $0x0
536275:	6a 73                	push   $0x73
536277:	56                   	push   %esi
536278:	e8 83 02 fd ff       	call   0x506500
53627d:	83 c4 14             	add    $0x14,%esp
536280:	8b d0                	mov    %eax,%edx
536282:	eb 36                	jmp    0x5362ba
536284:	8b 5d c0             	mov    -0x40(%ebp),%ebx
536287:	8d 42 01             	lea    0x1(%edx),%eax
53628a:	89 46 6c             	mov    %eax,0x6c(%esi)
53628d:	8d 0c 92             	lea    (%edx,%edx,4),%ecx
536290:	8b 46 68             	mov    0x68(%esi),%eax
536293:	c7 04 88 73 00 00 00 	movl   $0x73,(%eax,%ecx,4)
53629a:	c7 44 88 04 00 00 00 	movl   $0x0,0x4(%eax,%ecx,4)
5362a1:	00
5362a2:	c7 44 88 08 04 00 00 	movl   $0x4,0x8(%eax,%ecx,4)
5362a9:	00
5362aa:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
5362b1:	00
5362b2:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
5362b9:	00
5362ba:	8b 06                	mov    (%esi),%eax
5362bc:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
5362c0:	74 12                	je     0x5362d4
5362c2:	68 48 ac 6b 00       	push   $0x6bac48
5362c7:	6a 00                	push   $0x0
5362c9:	50                   	push   %eax
5362ca:	e8 e1 d9 fc ff       	call   0x503cb0
5362cf:	83 c4 0c             	add    $0xc,%esp
5362d2:	eb 22                	jmp    0x5362f6
5362d4:	85 d2                	test   %edx,%edx
5362d6:	79 04                	jns    0x5362dc
5362d8:	8b 56 6c             	mov    0x6c(%esi),%edx
5362db:	4a                   	dec    %edx
5362dc:	8b 46 68             	mov    0x68(%esi),%eax
5362df:	8d 0c 92             	lea    (%edx,%edx,4),%ecx
5362e2:	6a 00                	push   $0x0
5362e4:	68 48 ac 6b 00       	push   $0x6bac48
5362e9:	8d 04 88             	lea    (%eax,%ecx,4),%eax
5362ec:	50                   	push   %eax
5362ed:	56                   	push   %esi
5362ee:	e8 4d 39 02 00       	call   0x559c40
5362f3:	83 c4 10             	add    $0x10,%esp
5362f6:	6a 03                	push   $0x3
5362f8:	6a 03                	push   $0x3
5362fa:	6a 04                	push   $0x4
5362fc:	6a 6e                	push   $0x6e
5362fe:	56                   	push   %esi
5362ff:	e8 3c b8 00 00       	call   0x541b40
536304:	6a 00                	push   $0x0
536306:	ff 33                	push   (%ebx)
536308:	6a 00                	push   $0x0
53630a:	6a 04                	push   $0x4
53630c:	6a 00                	push   $0x0
53630e:	6a 73                	push   $0x73
536310:	56                   	push   %esi
536311:	e8 7a b8 00 00       	call   0x541b90
536316:	6a 03                	push   $0x3
536318:	6a 03                	push   $0x3
53631a:	6a 04                	push   $0x4
53631c:	6a 6e                	push   $0x6e
53631e:	56                   	push   %esi
53631f:	89 45 90             	mov    %eax,-0x70(%ebp)
536322:	e8 19 b8 00 00       	call   0x541b40
536327:	83 c4 44             	add    $0x44,%esp
53632a:	56                   	push   %esi
53632b:	e8 c0 0f fd ff       	call   0x5072f0
536330:	8b 56 6c             	mov    0x6c(%esi),%edx
536333:	83 c4 04             	add    $0x4,%esp
536336:	89 45 8c             	mov    %eax,-0x74(%ebp)
536339:	85 ff                	test   %edi,%edi
53633b:	79 03                	jns    0x536340
53633d:	8d 7a ff             	lea    -0x1(%edx),%edi
536340:	8b 06                	mov    (%esi),%eax
536342:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
536346:	74 07                	je     0x53634f
536348:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
53634d:	eb 09                	jmp    0x536358
53634f:	8b 46 68             	mov    0x68(%esi),%eax
536352:	8d 0c bf             	lea    (%edi,%edi,4),%ecx
536355:	8d 04 88             	lea    (%eax,%ecx,4),%eax
536358:	89 50 08             	mov    %edx,0x8(%eax)
53635b:	80 7b 36 00          	cmpb   $0x0,0x36(%ebx)
53635f:	0f 84 6b 01 00 00    	je     0x5364d0
536365:	8b 45 d4             	mov    -0x2c(%ebp),%eax
536368:	33 c9                	xor    %ecx,%ecx
53636a:	33 ff                	xor    %edi,%edi
53636c:	ff 48 38             	decl   0x38(%eax)
53636f:	8b 58 38             	mov    0x38(%eax),%ebx
536372:	8b 45 c0             	mov    -0x40(%ebp),%eax
536375:	66 3b 48 32          	cmp    0x32(%eax),%cx
536379:	73 41                	jae    0x5363bc
53637b:	eb 06                	jmp    0x536383
53637d:	0f 1f 00             	nopl   (%eax)
536380:	8b 45 c0             	mov    -0x40(%ebp),%eax
536383:	8b 40 04             	mov    0x4(%eax),%eax
536386:	0f bf 04 78          	movswl (%eax,%edi,2),%eax
53638a:	85 c0                	test   %eax,%eax
53638c:	78 10                	js     0x53639e
53638e:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
536391:	8b 45 ac             	mov    -0x54(%ebp),%eax
536394:	8b 40 04             	mov    0x4(%eax),%eax
536397:	80 7c 88 0c 00       	cmpb   $0x0,0xc(%eax,%ecx,4)
53639c:	75 12                	jne    0x5363b0
53639e:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5363a1:	53                   	push   %ebx
5363a2:	03 c7                	add    %edi,%eax
5363a4:	50                   	push   %eax
5363a5:	6a 32                	push   $0x32
5363a7:	56                   	push   %esi
5363a8:	e8 33 b7 00 00       	call   0x541ae0
5363ad:	83 c4 10             	add    $0x10,%esp
5363b0:	8b 45 c0             	mov    -0x40(%ebp),%eax
5363b3:	47                   	inc    %edi
5363b4:	0f b7 40 32          	movzwl 0x32(%eax),%eax
5363b8:	3b f8                	cmp    %eax,%edi
5363ba:	7c c4                	jl     0x536380
5363bc:	ff 75 b0             	push   -0x50(%ebp)
5363bf:	6a 05                	push   $0x5
5363c1:	56                   	push   %esi
5363c2:	e8 b9 b6 00 00       	call   0x541a80
5363c7:	53                   	push   %ebx
5363c8:	56                   	push   %esi
5363c9:	8b f8                	mov    %eax,%edi
5363cb:	e8 d0 3c 01 00       	call   0x54a0a0
5363d0:	8b 56 6c             	mov    0x6c(%esi),%edx
5363d3:	83 c4 14             	add    $0x14,%esp
5363d6:	85 ff                	test   %edi,%edi
5363d8:	79 03                	jns    0x5363dd
5363da:	8d 7a ff             	lea    -0x1(%edx),%edi
5363dd:	8b 06                	mov    (%esi),%eax
5363df:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
5363e3:	74 07                	je     0x5363ec
5363e5:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
5363ea:	eb 09                	jmp    0x5363f5
5363ec:	8b 46 68             	mov    0x68(%esi),%eax
5363ef:	8d 0c bf             	lea    (%edi,%edi,4),%ecx
5363f2:	8d 04 88             	lea    (%eax,%ecx,4),%eax
5363f5:	89 50 08             	mov    %edx,0x8(%eax)
5363f8:	8b 45 c0             	mov    -0x40(%ebp),%eax
5363fb:	0f b7 40 32          	movzwl 0x32(%eax),%eax
5363ff:	50                   	push   %eax
536400:	ff 75 b4             	push   -0x4c(%ebp)
536403:	53                   	push   %ebx
536404:	ff 75 b0             	push   -0x50(%ebp)
536407:	6a 27                	push   $0x27
536409:	56                   	push   %esi
53640a:	e8 01 b8 00 00       	call   0x541c10
53640f:	8b 56 6c             	mov    0x6c(%esi),%edx
536412:	83 c4 18             	add    $0x18,%esp
536415:	39 56 70             	cmp    %edx,0x70(%esi)
536418:	7f 15                	jg     0x53642f
53641a:	6a 00                	push   $0x0
53641c:	6a 03                	push   $0x3
53641e:	6a 00                	push   $0x0
536420:	6a 73                	push   $0x73
536422:	56                   	push   %esi
536423:	e8 d8 00 fd ff       	call   0x506500
536428:	83 c4 14             	add    $0x14,%esp
53642b:	8b d0                	mov    %eax,%edx
53642d:	eb 33                	jmp    0x536462
53642f:	8d 42 01             	lea    0x1(%edx),%eax
536432:	89 46 6c             	mov    %eax,0x6c(%esi)
536435:	8d 0c 92             	lea    (%edx,%edx,4),%ecx
536438:	8b 46 68             	mov    0x68(%esi),%eax
53643b:	c7 04 88 73 00 00 00 	movl   $0x73,(%eax,%ecx,4)
536442:	c7 44 88 04 00 00 00 	movl   $0x0,0x4(%eax,%ecx,4)
536449:	00
53644a:	c7 44 88 08 03 00 00 	movl   $0x3,0x8(%eax,%ecx,4)
536451:	00
536452:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
536459:	00
53645a:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
536461:	00
536462:	8b 06                	mov    (%esi),%eax
536464:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
536468:	74 12                	je     0x53647c
53646a:	68 60 ac 6b 00       	push   $0x6bac60
53646f:	6a 00                	push   $0x0
536471:	50                   	push   %eax
536472:	e8 39 d8 fc ff       	call   0x503cb0
536477:	83 c4 0c             	add    $0xc,%esp
53647a:	eb 22                	jmp    0x53649e
53647c:	85 d2                	test   %edx,%edx
53647e:	79 04                	jns    0x536484
536480:	8b 56 6c             	mov    0x6c(%esi),%edx
536483:	4a                   	dec    %edx
536484:	8b 46 68             	mov    0x68(%esi),%eax
536487:	8d 0c 92             	lea    (%edx,%edx,4),%ecx
53648a:	6a 00                	push   $0x0
53648c:	68 60 ac 6b 00       	push   $0x6bac60
536491:	8d 04 88             	lea    (%eax,%ecx,4),%eax
536494:	50                   	push   %eax
536495:	56                   	push   %esi
536496:	e8 a5 37 02 00       	call   0x559c40
53649b:	83 c4 10             	add    $0x10,%esp
53649e:	ff 75 90             	push   -0x70(%ebp)
5364a1:	56                   	push   %esi
5364a2:	e8 f9 3b 01 00       	call   0x54a0a0
5364a7:	8b 4e 0c             	mov    0xc(%esi),%ecx
5364aa:	83 c4 08             	add    $0x8,%esp
5364ad:	f7 d3                	not    %ebx
5364af:	8b 41 3c             	mov    0x3c(%ecx),%eax
5364b2:	03 41 38             	add    0x38(%ecx),%eax
5364b5:	79 0d                	jns    0x5364c4
5364b7:	53                   	push   %ebx
5364b8:	56                   	push   %esi
5364b9:	51                   	push   %ecx
5364ba:	e8 e1 d2 fd ff       	call   0x5137a0
5364bf:	83 c4 0c             	add    $0xc,%esp
5364c2:	eb 09                	jmp    0x5364cd
5364c4:	8b 49 40             	mov    0x40(%ecx),%ecx
5364c7:	8b 46 6c             	mov    0x6c(%esi),%eax
5364ca:	89 04 99             	mov    %eax,(%ecx,%ebx,4)
5364cd:	8b 5d c0             	mov    -0x40(%ebp),%ebx
5364d0:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
5364d3:	8b 56 6c             	mov    0x6c(%esi),%edx
5364d6:	85 c9                	test   %ecx,%ecx
5364d8:	79 03                	jns    0x5364dd
5364da:	8d 4a ff             	lea    -0x1(%edx),%ecx
5364dd:	8b 06                	mov    (%esi),%eax
5364df:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
5364e3:	74 07                	je     0x5364ec
5364e5:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
5364ea:	eb 09                	jmp    0x5364f5
5364ec:	8b 46 68             	mov    0x68(%esi),%eax
5364ef:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
5364f2:	8d 04 88             	lea    (%eax,%ecx,4),%eax
5364f5:	89 50 08             	mov    %edx,0x8(%eax)
5364f8:	8b 55 88             	mov    -0x78(%ebp),%edx
5364fb:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5364fe:	85 d2                	test   %edx,%edx
536500:	74 29                	je     0x53652b
536502:	8b 78 08             	mov    0x8(%eax),%edi
536505:	f7 d2                	not    %edx
536507:	8b 4f 0c             	mov    0xc(%edi),%ecx
53650a:	8b 41 3c             	mov    0x3c(%ecx),%eax
53650d:	03 41 38             	add    0x38(%ecx),%eax
536510:	79 0d                	jns    0x53651f
536512:	52                   	push   %edx
536513:	57                   	push   %edi
536514:	51                   	push   %ecx
536515:	e8 86 d2 fd ff       	call   0x5137a0
53651a:	83 c4 0c             	add    $0xc,%esp
53651d:	eb 09                	jmp    0x536528
53651f:	8b 49 40             	mov    0x40(%ecx),%ecx
536522:	8b 47 6c             	mov    0x6c(%edi),%eax
536525:	89 04 91             	mov    %eax,(%ecx,%edx,4)
536528:	8b 45 d4             	mov    -0x2c(%ebp),%eax
53652b:	8b 4d bc             	mov    -0x44(%ebp),%ecx
53652e:	8b 5b 14             	mov    0x14(%ebx),%ebx
536531:	ff 45 b0             	incl   -0x50(%ebp)
536534:	89 5d c0             	mov    %ebx,-0x40(%ebp)
536537:	85 db                	test   %ebx,%ebx
536539:	0f 85 31 fc ff ff    	jne    0x536170
53653f:	8a 5d ab             	mov    -0x55(%ebp),%bl
536542:	8b 7d e4             	mov    -0x1c(%ebp),%edi
536545:	57                   	push   %edi
536546:	ff 75 cc             	push   -0x34(%ebp)
536549:	6a 05                	push   $0x5
53654b:	56                   	push   %esi