535da7:	75 f7                	jne    0x535da0
535da9:	8b 1b                	mov    (%ebx),%ebx
535dab:	3b fe                	cmp    %esi,%edi
535dad:	0f 4f f7             	cmovg  %edi,%esi
535db0:	85 db                	test   %ebx,%ebx
535db2:	75 cd                	jne    0x535d81
535db4:	89 75 b4             	mov    %esi,-0x4c(%ebp)
535db7:	8b 75 a4             	mov    -0x5c(%ebp),%esi
535dba:	8d 04 95 04 00 00 00 	lea    0x4(,%edx,4),%eax
535dc1:	6a 00                	push   $0x0
535dc3:	50                   	push   %eax
535dc4:	ff 75 d8             	push   -0x28(%ebp)
535dc7:	e8 14 b6 fe ff       	call   0x5213e0
535dcc:	8b f8                	mov    %eax,%edi
535dce:	83 c4 0c             	add    $0xc,%esp
535dd1:	85 ff                	test   %edi,%edi
535dd3:	0f 84 ed 09 00 00    	je     0x5367c6
535dd9:	8b 5d a0             	mov    -0x60(%ebp),%ebx
535ddc:	33 d2                	xor    %edx,%edx
535dde:	8b 5b 08             	mov    0x8(%ebx),%ebx
535de1:	85 db                	test   %ebx,%ebx
535de3:	74 2f                	je     0x535e14
535de5:	8b 4b 08             	mov    0x8(%ebx),%ecx
535de8:	f6 41 24 80          	testb  $0x80,0x24(%ecx)
535dec:	75 07                	jne    0x535df5
535dee:	8b 41 1c             	mov    0x1c(%ecx),%eax
535df1:	42                   	inc    %edx
535df2:	89 04 97             	mov    %eax,(%edi,%edx,4)
535df5:	8b 49 08             	mov    0x8(%ecx),%ecx
535df8:	85 c9                	test   %ecx,%ecx
535dfa:	74 12                	je     0x535e0e
535dfc:	0f 1f 40 00          	nopl   0x0(%eax)
535e00:	8b 41 2c             	mov    0x2c(%ecx),%eax
535e03:	42                   	inc    %edx
535e04:	89 04 97             	mov    %eax,(%edi,%edx,4)
535e07:	8b 49 14             	mov    0x14(%ecx),%ecx
535e0a:	85 c9                	test   %ecx,%ecx
535e0c:	75 f2                	jne    0x535e00
535e0e:	8b 1b                	mov    (%ebx),%ebx
535e10:	85 db                	test   %ebx,%ebx
535e12:	75 d1                	jne    0x535de5
535e14:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
535e17:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
535e1a:	6a f1                	push   $0xfffffff1
535e1c:	57                   	push   %edi
535e1d:	6a 01                	push   $0x1
535e1f:	89 17                	mov    %edx,(%edi)
535e21:	83 c1 08             	add    $0x8,%ecx
535e24:	39 4b 2c             	cmp    %ecx,0x2c(%ebx)
535e27:	52                   	push   %edx
535e28:	0f 4f 4b 2c          	cmovg  0x2c(%ebx),%ecx
535e2c:	6a 02                	push   $0x2
535e2e:	68 92 00 00 00       	push   $0x92
535e33:	56                   	push   %esi
535e34:	89 4b 2c             	mov    %ecx,0x2c(%ebx)
535e37:	c6 43 13 00          	movb   $0x0,0x13(%ebx)
535e3b:	c7 43 1c 00 00 00 00 	movl   $0x0,0x1c(%ebx)
535e42:	e8 49 bd 00 00       	call   0x541b90
535e47:	8b 45 c8             	mov    -0x38(%ebp),%eax
535e4a:	0f b6 c0             	movzbl %al,%eax
535e4d:	50                   	push   %eax
535e4e:	56                   	push   %esi
535e4f:	e8 dc c1 00 00       	call   0x542030
535e54:	6a 02                	push   $0x2
535e56:	6a 32                	push   $0x32
535e58:	56                   	push   %esi
535e59:	e8 22 bc 00 00       	call   0x541a80
535e5e:	8b 55 d8             	mov    -0x28(%ebp),%edx
535e61:	83 c4 30             	add    $0x30,%esp
535e64:	8b f8                	mov    %eax,%edi
535e66:	8b 45 94             	mov    -0x6c(%ebp),%eax
535e69:	8b 4a 10             	mov    0x10(%edx),%ecx
535e6c:	6a f9                	push   $0xfffffff9
535e6e:	ff 34 01             	push   (%ecx,%eax,1)
535e71:	68 f4 ab 6b 00       	push   $0x6babf4
535e76:	52                   	push   %edx
535e77:	e8 c4 b0 ff ff       	call   0x530f40
535e7c:	83 c4 0c             	add    $0xc,%esp
535e7f:	50                   	push   %eax
535e80:	6a 00                	push   $0x0
535e82:	6a 03                	push   $0x3
535e84:	6a 00                	push   $0x0
535e86:	6a 73                	push   $0x73
535e88:	56                   	push   %esi
535e89:	e8 02 bd 00 00       	call   0x541b90
535e8e:	6a 03                	push   $0x3
535e90:	6a 03                	push   $0x3
535e92:	6a 02                	push   $0x2
535e94:	6a 6e                	push   $0x6e
535e96:	56                   	push   %esi
535e97:	e8 a4 bc 00 00       	call   0x541b40
535e9c:	56                   	push   %esi
535e9d:	e8 4e 14 fd ff       	call   0x5072f0
535ea2:	57                   	push   %edi
535ea3:	56                   	push   %esi
535ea4:	e8 b7 48 01 00       	call   0x54a760
535ea9:	8b 45 a0             	mov    -0x60(%ebp),%eax
535eac:	83 c4 3c             	add    $0x3c,%esp
535eaf:	8b 40 08             	mov    0x8(%eax),%eax
535eb2:	89 45 d0             	mov    %eax,-0x30(%ebp)
535eb5:	85 c0                	test   %eax,%eax
535eb7:	0f 84 f3 08 00 00    	je     0x5367b0
535ebd:	8b d8                	mov    %eax,%ebx
535ebf:	90                   	nop
535ec0:	8b 5b 08             	mov    0x8(%ebx),%ebx
535ec3:	89 5d ac             	mov    %ebx,-0x54(%ebp)
535ec6:	c7 45 94 00 00 00 00 	movl   $0x0,-0x6c(%ebp)
535ecd:	c7 45 b4 ff ff ff ff 	movl   $0xffffffff,-0x4c(%ebp)
535ed4:	83 7b 1c 01          	cmpl   $0x1,0x1c(%ebx)
535ed8:	0f 8c bf 08 00 00    	jl     0x53679d
535ede:	f6 43 24 80          	testb  $0x80,0x24(%ebx)
535ee2:	75 09                	jne    0x535eed
535ee4:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
535eeb:	eb 0c                	jmp    0x535ef9
535eed:	53                   	push   %ebx
535eee:	e8 dd 14 00 00       	call   0x5373d0
535ef3:	83 c4 04             	add    $0x4,%esp
535ef6:	89 45 bc             	mov    %eax,-0x44(%ebp)
535ef9:	8d 45 9c             	lea    -0x64(%ebp),%eax
535efc:	50                   	push   %eax
535efd:	8d 45 cc             	lea    -0x34(%ebp),%eax
535f00:	50                   	push   %eax
535f01:	6a 00                	push   $0x0
535f03:	6a 01                	push   $0x1
535f05:	6a 00                	push   $0x0
535f07:	6a 60                	push   $0x60
535f09:	53                   	push   %ebx
535f0a:	ff 75 d4             	push   -0x2c(%ebp)
535f0d:	e8 6e bb ff ff       	call   0x531a80
535f12:	6a 07                	push   $0x7
535f14:	6a 00                	push   $0x0
535f16:	6a 45                	push   $0x45
535f18:	56                   	push   %esi
535f19:	e8 c2 bb 00 00       	call   0x541ae0
535f1e:	8b 7b 08             	mov    0x8(%ebx),%edi
535f21:	83 c4 30             	add    $0x30,%esp
535f24:	85 ff                	test   %edi,%edi
535f26:	74 21                	je     0x535f49
535f28:	bb 08 00 00 00       	mov    $0x8,%ebx
535f2d:	0f 1f 00             	nopl   (%eax)
535f30:	53                   	push   %ebx
535f31:	6a 00                	push   $0x0
535f33:	6a 45                	push   $0x45
535f35:	56                   	push   %esi
535f36:	e8 a5 bb 00 00       	call   0x541ae0
535f3b:	8b 7f 14             	mov    0x14(%edi),%edi
535f3e:	83 c4 10             	add    $0x10,%esp
535f41:	43                   	inc    %ebx
535f42:	85 ff                	test   %edi,%edi
535f44:	75 ea                	jne    0x535f30
535f46:	8b 5d ac             	mov    -0x54(%ebp),%ebx
535f49:	8b 7d cc             	mov    -0x34(%ebp),%edi
535f4c:	6a 00                	push   $0x0
535f4e:	57                   	push   %edi
535f4f:	6a 25                	push   $0x25
535f51:	56                   	push   %esi
535f52:	e8 89 bb 00 00       	call   0x541ae0
535f57:	6a 01                	push   $0x1
535f59:	6a 07                	push   $0x7
535f5b:	6a 52                	push   $0x52
535f5d:	56                   	push   %esi
535f5e:	e8 7d bb 00 00       	call   0x541ae0
535f63:	83 c4 20             	add    $0x20,%esp
535f66:	89 45 e4             	mov    %eax,-0x1c(%ebp)
535f69:	80 7d ab 71          	cmpb   $0x71,-0x55(%ebp)
535f6d:	74 1f                	je     0x535f8e
535f6f:	0f bf 4b 2c          	movswl 0x2c(%ebx),%ecx
535f73:	6a 03                	push   $0x3
535f75:	49                   	dec    %ecx
535f76:	51                   	push   %ecx
535f77:	57                   	push   %edi
535f78:	6a 59                	push   $0x59
535f7a:	56                   	push   %esi
535f7b:	e8 c0 bb 00 00       	call   0x541b40
535f80:	68 80 00 00 00       	push   $0x80
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