535f85:	56                   	push   %esi
535f86:	e8 a5 c0 00 00       	call   0x542030
535f8b:	83 c4 1c             	add    $0x1c,%esp
535f8e:	8b 55 ac             	mov    -0x54(%ebp),%edx
535f91:	33 c0                	xor    %eax,%eax
535f93:	33 db                	xor    %ebx,%ebx
535f95:	66 3b 42 2a          	cmp    0x2a(%edx),%ax
535f99:	0f 8d ac 00 00 00    	jge    0x53604b
535f9f:	33 c9                	xor    %ecx,%ecx
535fa1:	89 4d b0             	mov    %ecx,-0x50(%ebp)
535fa4:	0f bf 42 28          	movswl 0x28(%edx),%eax
535fa8:	3b d8                	cmp    %eax,%ebx
535faa:	0f 84 88 00 00 00    	je     0x536038
535fb0:	8b 42 04             	mov    0x4(%edx),%eax
535fb3:	80 7c 01 0c 00       	cmpb   $0x0,0xc(%ecx,%eax,1)
535fb8:	0f 84 7a 00 00 00    	je     0x536038
535fbe:	6a 03                	push   $0x3
535fc0:	53                   	push   %ebx
535fc1:	57                   	push   %edi
535fc2:	52                   	push   %edx
535fc3:	56                   	push   %esi
535fc4:	e8 f7 e0 fe ff       	call   0x5240c0
535fc9:	6a ff                	push   $0xffffffff
535fcb:	56                   	push   %esi
535fcc:	e8 9f 40 01 00       	call   0x54a070
535fd1:	83 c4 1c             	add    $0x1c,%esp
535fd4:	80 38 59             	cmpb   $0x59,(%eax)
535fd7:	75 0e                	jne    0x535fe7
535fd9:	68 80 00 00 00       	push   $0x80
535fde:	56                   	push   %esi
535fdf:	e8 4c c0 00 00       	call   0x542030
535fe4:	83 c4 08             	add    $0x8,%esp
535fe7:	6a 03                	push   $0x3
535fe9:	6a 33                	push   $0x33
535feb:	56                   	push   %esi
535fec:	e8 8f ba 00 00       	call   0x541a80
535ff1:	8b 55 ac             	mov    -0x54(%ebp),%edx
535ff4:	8b f8                	mov    %eax,%edi
535ff6:	8b 45 b0             	mov    -0x50(%ebp),%eax
535ff9:	8b 4a 04             	mov    0x4(%edx),%ecx
535ffc:	ff 34 08             	push   (%eax,%ecx,1)
535fff:	ff 32                	push   (%edx)
536001:	68 0c ac 6b 00       	push   $0x6bac0c
536006:	ff 75 d8             	push   -0x28(%ebp)
536009:	e8 32 af ff ff       	call   0x530f40
53600e:	6a f9                	push   $0xfffffff9
536010:	50                   	push   %eax
536011:	6a 00                	push   $0x0
536013:	6a 03                	push   $0x3
536015:	6a 00                	push   $0x0
536017:	6a 73                	push   $0x73
536019:	56                   	push   %esi
53601a:	e8 71 bb 00 00       	call   0x541b90
53601f:	56                   	push   %esi
536020:	e8 cb 12 fd ff       	call   0x5072f0
536025:	57                   	push   %edi
536026:	56                   	push   %esi
536027:	e8 34 47 01 00       	call   0x54a760
53602c:	8b 4d b0             	mov    -0x50(%ebp),%ecx
53602f:	83 c4 44             	add    $0x44,%esp
536032:	8b 55 ac             	mov    -0x54(%ebp),%edx
536035:	8b 7d cc             	mov    -0x34(%ebp),%edi
536038:	0f bf 42 2a          	movswl 0x2a(%edx),%eax
53603c:	43                   	inc    %ebx
53603d:	83 c1 14             	add    $0x14,%ecx
536040:	89 4d b0             	mov    %ecx,-0x50(%ebp)
536043:	3b d8                	cmp    %eax,%ebx
536045:	0f 8c 59 ff ff ff    	jl     0x535fa4
53604b:	8b 4a 18             	mov    0x18(%edx),%ecx
53604e:	85 c9                	test   %ecx,%ecx
536050:	0f 84 ea 00 00 00    	je     0x536140
536056:	8b 5d d8             	mov    -0x28(%ebp),%ebx
536059:	8b 43 20             	mov    0x20(%ebx),%eax
53605c:	25 00 02 00 00       	and    $0x200,%eax
536061:	83 c8 00             	or     $0x0,%eax
536064:	0f 85 d6 00 00 00    	jne    0x536140
53606a:	50                   	push   %eax
53606b:	51                   	push   %ecx
53606c:	53                   	push   %ebx
53606d:	e8 4e 18 ff ff       	call   0x5278c0
536072:	83 c4 0c             	add    $0xc,%esp
536075:	8b d0                	mov    %eax,%edx
536077:	80 7b 51 00          	cmpb   $0x0,0x51(%ebx)
53607b:	89 55 b0             	mov    %edx,-0x50(%ebp)
53607e:	0f 85 ab 00 00 00    	jne    0x53612f
536084:	8b 45 d4             	mov    -0x2c(%ebp),%eax
536087:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
53608a:	8b 58 38             	mov    0x38(%eax),%ebx
53608d:	4b                   	dec    %ebx
53608e:	89 5d a0             	mov    %ebx,-0x60(%ebp)
536091:	8d 43 ff             	lea    -0x1(%ebx),%eax
536094:	89 41 38             	mov    %eax,0x38(%ecx)
536097:	8d 47 01             	lea    0x1(%edi),%eax
53609a:	89 41 34             	mov    %eax,0x34(%ecx)
53609d:	8b 3a                	mov    (%edx),%edi
53609f:	4f                   	dec    %edi
5360a0:	85 ff                	test   %edi,%edi
5360a2:	7e 31                	jle    0x5360d5
5360a4:	8b 75 a0             	mov    -0x60(%ebp),%esi
5360a7:	8d 1c bd 01 00 00 00 	lea    0x1(,%edi,4),%ebx
5360ae:	03 df                	add    %edi,%ebx
5360b0:	8d 1c 9a             	lea    (%edx,%ebx,4),%ebx
5360b3:	6a 00                	push   $0x0
5360b5:	56                   	push   %esi
5360b6:	ff 33                	push   (%ebx)
5360b8:	51                   	push   %ecx
5360b9:	e8 f2 09 ff ff       	call   0x526ab0
5360be:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
5360c1:	8d 5b ec             	lea    -0x14(%ebx),%ebx
5360c4:	4f                   	dec    %edi
5360c5:	83 c4 10             	add    $0x10,%esp
5360c8:	85 ff                	test   %edi,%edi
5360ca:	7f e7                	jg     0x5360b3
5360cc:	8b 75 a4             	mov    -0x5c(%ebp),%esi
5360cf:	8b 5d a0             	mov    -0x60(%ebp),%ebx
5360d2:	8b 55 b0             	mov    -0x50(%ebp),%edx
5360d5:	6a 10                	push   $0x10
5360d7:	8d 7b ff             	lea    -0x1(%ebx),%edi
5360da:	57                   	push   %edi
5360db:	ff 72 04             	push   0x4(%edx)
5360de:	51                   	push   %ecx
5360df:	e8 8c 0d ff ff       	call   0x526e70
5360e4:	53                   	push   %ebx
5360e5:	56                   	push   %esi
5360e6:	e8 e5 6b 01 00       	call   0x54ccd0
5360eb:	8b 45 d4             	mov    -0x2c(%ebp),%eax
5360ee:	8b 5d d8             	mov    -0x28(%ebp),%ebx
5360f1:	c7 40 34 00 00 00 00 	movl   $0x0,0x34(%eax)
5360f8:	8b 45 ac             	mov    -0x54(%ebp),%eax
5360fb:	ff 30                	push   (%eax)
5360fd:	68 20 ac 6b 00       	push   $0x6bac20
536102:	53                   	push   %ebx
536103:	e8 38 ae ff ff       	call   0x530f40
536108:	6a f9                	push   $0xfffffff9
53610a:	50                   	push   %eax
53610b:	6a 00                	push   $0x0
53610d:	6a 03                	push   $0x3
53610f:	6a 00                	push   $0x0
536111:	6a 73                	push   $0x73
536113:	56                   	push   %esi
536114:	e8 77 ba 00 00       	call   0x541b90
536119:	83 c4 40             	add    $0x40,%esp
53611c:	56                   	push   %esi
53611d:	e8 ce 11 fd ff       	call   0x5072f0
536122:	57                   	push   %edi
536123:	56                   	push   %esi
536124:	e8 a7 6b 01 00       	call   0x54ccd0
536129:	8b 55 b0             	mov    -0x50(%ebp),%edx
53612c:	83 c4 0c             	add    $0xc,%esp
53612f:	85 d2                	test   %edx,%edx
536131:	74 0a                	je     0x53613d
536133:	52                   	push   %edx
536134:	53                   	push   %ebx
536135:	e8 c6 ae fc ff       	call   0x501000
53613a:	83 c4 08             	add    $0x8,%esp
53613d:	8b 55 ac             	mov    -0x54(%ebp),%edx
536140:	8a 5d ab             	mov    -0x55(%ebp),%bl
536143:	80 fb 71             	cmp    $0x71,%bl
536146:	0f 84 f6 03 00 00    	je     0x536542
53614c:	8b 5a 08             	mov    0x8(%edx),%ebx
53614f:	89 5d c0             	mov    %ebx,-0x40(%ebp)
536152:	85 db                	test   %ebx,%ebx
536154:	0f 84 e5 03 00 00    	je     0x53653f
53615a:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
53615d:	b8 08 00 00 00       	mov    $0x8,%eax
536162:	2b c1                	sub    %ecx,%eax
536164:	89 4d b0             	mov    %ecx,-0x50(%ebp)
536167:	8b 4d bc             	mov    -0x44(%ebp),%ecx
53616a:	89 45 a0             	mov    %eax,-0x60(%ebp)
53616d:	8b 45 d4             	mov    -0x2c(%ebp),%eax
536170:	8b 78 38             	mov    0x38(%eax),%edi
536173:	4f                   	dec    %edi
536174:	89 78 38             	mov    %edi,0x38(%eax)
536177:	3b cb                	cmp    %ebx,%ecx
536179:	0f 84 af 03 00 00    	je     0x53652e
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