532d88:	c7 86 ac 00 00 00 00 	movl   $0x0,0xac(%esi)
532d8f:	00 00 00
532d92:	85 ff                	test   %edi,%edi
532d94:	74 1c                	je     0x532db2
532d96:	57                   	push   %edi
532d97:	ff 75 f4             	push   -0xc(%ebp)
532d9a:	89 9e dc 00 00 00    	mov    %ebx,0xdc(%esi)
532da0:	53                   	push   %ebx
532da1:	e8 5a 01 0b 00       	call   0x5e2f00
532da6:	83 c4 0c             	add    $0xc,%esp
532da9:	c7 04 3b 2d 77 61 6c 	movl   $0x6c61772d,(%ebx,%edi,1)
532db0:	eb 0a                	jmp    0x532dbc
532db2:	c7 86 dc 00 00 00 00 	movl   $0x0,0xdc(%esi)
532db9:	00 00 00
532dbc:	85 ff                	test   %edi,%edi
532dbe:	74 10                	je     0x532dd0
532dc0:	8b 45 f4             	mov    -0xc(%ebp),%eax
532dc3:	85 c0                	test   %eax,%eax
532dc5:	74 09                	je     0x532dd0
532dc7:	50                   	push   %eax
532dc8:	e8 c3 7f fb ff       	call   0x4ead90
532dcd:	83 c4 04             	add    $0x4,%esp
532dd0:	8b 45 e0             	mov    -0x20(%ebp),%eax
532dd3:	8b 4d f0             	mov    -0x10(%ebp),%ecx
532dd6:	8b 55 1c             	mov    0x1c(%ebp),%edx
532dd9:	89 0e                	mov    %ecx,(%esi)
532ddb:	89 96 90 00 00 00    	mov    %edx,0x90(%esi)
532de1:	85 c0                	test   %eax,%eax
532de3:	0f 84 e9 00 00 00    	je     0x532ed2
532de9:	80 38 00             	cmpb   $0x0,(%eax)
532dec:	0f 84 e0 00 00 00    	je     0x532ed2
532df2:	8d 45 f8             	lea    -0x8(%ebp),%eax
532df5:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
532dfc:	50                   	push   %eax
532dfd:	8b c2                	mov    %edx,%eax
532dff:	25 7f 7f 08 01       	and    $0x1087f7f,%eax
532e04:	50                   	push   %eax
532e05:	ff 76 3c             	push   0x3c(%esi)
532e08:	8b 41 18             	mov    0x18(%ecx),%eax
532e0b:	ff b6 a8 00 00 00    	push   0xa8(%esi)
532e11:	51                   	push   %ecx
532e12:	ff d0                	call   *%eax
532e14:	8b 5d f8             	mov    -0x8(%ebp),%ebx
532e17:	83 c4 14             	add    $0x14,%esp
532e1a:	83 e3 01             	and    $0x1,%ebx
532e1d:	89 45 ec             	mov    %eax,-0x14(%ebp)
532e20:	89 5d e8             	mov    %ebx,-0x18(%ebp)
532e23:	85 c0                	test   %eax,%eax
532e25:	0f 85 ed 01 00 00    	jne    0x533018
532e2b:	8b 46 3c             	mov    0x3c(%esi),%eax
532e2e:	50                   	push   %eax
532e2f:	8b 08                	mov    (%eax),%ecx
532e31:	8b 41 30             	mov    0x30(%ecx),%eax
532e34:	ff d0                	call   *%eax
532e36:	83 c4 04             	add    $0x4,%esp
532e39:	8b f8                	mov    %eax,%edi
532e3b:	85 db                	test   %ebx,%ebx
532e3d:	75 24                	jne    0x532e63
532e3f:	56                   	push   %esi
532e40:	e8 db 44 fe ff       	call   0x517320
532e45:	8b 8e 94 00 00 00    	mov    0x94(%esi),%ecx
532e4b:	83 c4 04             	add    $0x4,%esp
532e4e:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
532e54:	76 0d                	jbe    0x532e63
532e56:	b8 00 20 00 00       	mov    $0x2000,%eax
532e5b:	3b c8                	cmp    %eax,%ecx
532e5d:	0f 47 c8             	cmova  %eax,%ecx
532e60:	89 4d dc             	mov    %ecx,-0x24(%ebp)
532e63:	68 54 82 6b 00       	push   $0x6b8254
532e68:	ff b6 a8 00 00 00    	push   0xa8(%esi)
532e6e:	e8 cd 9e fb ff       	call   0x4ecd40
532e73:	83 c4 08             	add    $0x8,%esp
532e76:	85 c0                	test   %eax,%eax
532e78:	74 16                	je     0x532e90
532e7a:	6a 00                	push   $0x0
532e7c:	6a 01                	push   $0x1
532e7e:	50                   	push   %eax
532e7f:	e8 1c 35 fd ff       	call   0x5063a0
532e84:	33 c9                	xor    %ecx,%ecx
532e86:	83 c4 0c             	add    $0xc,%esp
532e89:	84 c0                	test   %al,%al
532e8b:	0f 95 c1             	setne  %cl
532e8e:	eb 02                	jmp    0x532e92
532e90:	33 c9                	xor    %ecx,%ecx
532e92:	88 4e 0d             	mov    %cl,0xd(%esi)
532e95:	f7 c7 00 20 00 00    	test   $0x2000,%edi
532e9b:	75 2f                	jne    0x532ecc
532e9d:	68 5c 82 6b 00       	push   $0x6b825c
532ea2:	ff b6 a8 00 00 00    	push   0xa8(%esi)
532ea8:	e8 93 9e fb ff       	call   0x4ecd40
532ead:	83 c4 08             	add    $0x8,%esp
532eb0:	85 c0                	test   %eax,%eax
532eb2:	74 41                	je     0x532ef5
532eb4:	6a 00                	push   $0x0
532eb6:	6a 01                	push   $0x1
532eb8:	50                   	push   %eax
532eb9:	e8 e2 34 fd ff       	call   0x5063a0
532ebe:	33 c9                	xor    %ecx,%ecx
532ec0:	83 c4 0c             	add    $0xc,%esp
532ec3:	84 c0                	test   %al,%al
532ec5:	0f 95 c1             	setne  %cl
532ec8:	85 c9                	test   %ecx,%ecx
532eca:	74 29                	je     0x532ef5
532ecc:	8b 55 1c             	mov    0x1c(%ebp),%edx
532ecf:	83 ca 01             	or     $0x1,%edx
532ed2:	8b 5d ec             	mov    -0x14(%ebp),%ebx
532ed5:	b9 01 00 00 00       	mov    $0x1,%ecx
532eda:	8b c2                	mov    %edx,%eax
532edc:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
532edf:	23 c1                	and    %ecx,%eax
532ee1:	66 c7 46 10 01 04    	movw   $0x401,0x10(%esi)
532ee7:	88 4e 0d             	mov    %cl,0xd(%esi)
532eea:	89 45 e8             	mov    %eax,-0x18(%ebp)
532eed:	85 db                	test   %ebx,%ebx
532eef:	0f 85 26 01 00 00    	jne    0x53301b
532ef5:	6a ff                	push   $0xffffffff
532ef7:	8d 45 dc             	lea    -0x24(%ebp),%eax
532efa:	50                   	push   %eax
532efb:	56                   	push   %esi
532efc:	e8 af 05 00 00       	call   0x5334b0
532f01:	8b d8                	mov    %eax,%ebx
532f03:	83 c4 0c             	add    $0xc,%esp
532f06:	85 db                	test   %ebx,%ebx
532f08:	0f 85 0d 01 00 00    	jne    0x53301b
532f0e:	8b 7d 14             	mov    0x14(%ebp),%edi
532f11:	ba 40 d2 50 00       	mov    $0x50d240,%edx
532f16:	ff b6 d4 00 00 00    	push   0xd4(%esi)
532f1c:	8b 4d d8             	mov    -0x28(%ebp),%ecx
532f1f:	83 c7 07             	add    $0x7,%edi
532f22:	83 e7 f8             	and    $0xfffffff8,%edi
532f25:	85 c9                	test   %ecx,%ecx
532f27:	56                   	push   %esi
532f28:	0f 44 c2             	cmove  %edx,%eax
532f2b:	50                   	push   %eax
532f2c:	33 c0                	xor    %eax,%eax
532f2e:	85 c9                	test   %ecx,%ecx
532f30:	0f 94 c0             	sete   %al
532f33:	50                   	push   %eax
532f34:	57                   	push   %edi
532f35:	ff 75 dc             	push   -0x24(%ebp)
532f38:	e8 53 16 00 00       	call   0x534590
532f3d:	8b d8                	mov    %eax,%ebx
532f3f:	83 c4 18             	add    $0x18,%esp
532f42:	85 db                	test   %ebx,%ebx
532f44:	0f 85 d1 00 00 00    	jne    0x53301b
532f4a:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
532f4d:	8b 45 d0             	mov    -0x30(%ebp),%eax
532f50:	8b 5d d8             	mov    -0x28(%ebp),%ebx
532f53:	88 46 06             	mov    %al,0x6(%esi)
532f56:	8b 45 e8             	mov    -0x18(%ebp),%eax
532f59:	c7 86 9c 00 00 00 ff 	movl   $0x3fffffff,0x9c(%esi)
532f60:	ff ff 3f
532f63:	88 4e 0c             	mov    %cl,0xc(%esi)
532f66:	88 4e 04             	mov    %cl,0x4(%esi)
532f69:	88 4e 12             	mov    %cl,0x12(%esi)
532f6c:	88 5e 0f             	mov    %bl,0xf(%esi)
532f6f:	88 46 0e             	mov    %al,0xe(%esi)
532f72:	88 4e 07             	mov    %cl,0x7(%esi)
532f75:	84 c9                	test   %cl,%cl
532f77:	75 07                	jne    0x532f80
532f79:	c7 46 08 01 00 02 0a 	movl   $0xa020001,0x8(%esi)
532f80:	56                   	push   %esi
532f81:	66 89 be 8c 00 00 00 	mov    %di,0x8c(%esi)
532f88:	c7 86 a0 00 00 00 ff 	movl   $0xffffffff,0xa0(%esi)
532f8f:	ff ff ff
532f92:	c7 86 a4 00 00 00 ff 	movl   $0xffffffff,0xa4(%esi)
532f99:	ff ff ff
532f9c:	e8 7f 43 fe ff       	call   0x517320
532fa1:	83 c4 04             	add    $0x4,%esp
532fa4:	83 7d d0 00          	cmpl   $0x0,-0x30(%ebp)
532fa8:	75 06                	jne    0x532fb0
532faa:	c6 46 05 02          	movb   $0x2,0x5(%esi)
532fae:	eb 08                	jmp    0x532fb8
532fb0:	85 db                	test   %ebx,%ebx
532fb2:	74 04                	je     0x532fb8
532fb4:	c6 46 05 04          	movb   $0x4,0x5(%esi)
532fb8:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
532fbc:	8b 45 20             	mov    0x20(%ebp),%eax
532fbf:	89 86 c8 00 00 00    	mov    %eax,0xc8(%esi)
532fc5:	74 22                	je     0x532fe9
532fc7:	8b 45 cc             	mov    -0x34(%ebp),%eax
532fca:	c7 86 cc 00 00 00 60 	movl   $0x505f60,0xcc(%esi)
532fd1:	5f 50 00
532fd4:	5f                   	pop    %edi
532fd5:	89 30                	mov    %esi,(%eax)
532fd7:	33 c0                	xor    %eax,%eax
532fd9:	5e                   	pop    %esi
532fda:	5b                   	pop    %ebx
532fdb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
532fde:	33 cd                	xor    %ebp,%ecx
532fe0:	e8 f5 e4 0a 00       	call   0x5e14da
532fe5:	8b e5                	mov    %ebp,%esp
532fe7:	5d                   	pop    %ebp
532fe8:	c3                   	ret
532fe9:	80 7e 16 00          	cmpb   $0x0,0x16(%esi)
532fed:	b8 60 61 50 00       	mov    $0x506160,%eax
532ff2:	b9 80 5f 50 00       	mov    $0x505f80,%ecx
532ff7:	0f 45 c1             	cmovne %ecx,%eax
532ffa:	89 86 cc 00 00 00    	mov    %eax,0xcc(%esi)
533000:	8b 45 cc             	mov    -0x34(%ebp),%eax
533003:	5f                   	pop    %edi
533004:	89 30                	mov    %esi,(%eax)
533006:	33 c0                	xor    %eax,%eax
533008:	5e                   	pop    %esi
533009:	5b                   	pop    %ebx
53300a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
53300d:	33 cd                	xor    %ebp,%ecx
53300f:	e8 c6 e4 0a 00       	call   0x5e14da
533014:	8b e5                	mov    %ebp,%esp
533016:	5d                   	pop    %ebp
533017:	c3                   	ret
533018:	8b 5d ec             	mov    -0x14(%ebp),%ebx
53301b:	8b 7e 3c             	mov    0x3c(%esi),%edi
53301e:	8b 07                	mov    (%edi),%eax
533020:	85 c0                	test   %eax,%eax
533022:	74 0f                	je     0x533033
533024:	8b 40 04             	mov    0x4(%eax),%eax
533027:	57                   	push   %edi
533028:	ff d0                	call   *%eax
53302a:	83 c4 04             	add    $0x4,%esp
53302d:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
533033:	ff b6 d0 00 00 00    	push   0xd0(%esi)
533039:	e8 52 ce fd ff       	call   0x50fe90
53303e:	56                   	push   %esi
53303f:	e8 4c 7d fb ff       	call   0x4ead90
533044:	83 c4 08             	add    $0x8,%esp
533047:	8b c3                	mov    %ebx,%eax
533049:	5f                   	pop    %edi
53304a:	5e                   	pop    %esi
53304b:	5b                   	pop    %ebx
53304c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
53304f:	33 cd                	xor    %ebp,%ecx
533051:	e8 84 e4 0a 00       	call   0x5e14da
533056:	8b e5                	mov    %ebp,%esp
533058:	5d                   	pop    %ebp
533059:	c3                   	ret
53305a:	85 db                	test   %ebx,%ebx
53305c:	74 09                	je     0x533067
53305e:	53                   	push   %ebx
53305f:	e8 2c 7d fb ff       	call   0x4ead90
533064:	83 c4 04             	add    $0x4,%esp
533067:	8b 4d fc             	mov    -0x4(%ebp),%ecx
53306a:	b8 07 00 00 00       	mov    $0x7,%eax
53306f:	5f                   	pop    %edi
533070:	5e                   	pop    %esi
533071:	33 cd                	xor    %ebp,%ecx
533073:	5b                   	pop    %ebx
533074:	e8 61 e4 0a 00       	call   0x5e14da
533079:	8b e5                	mov    %ebp,%esp
53307b:	5d                   	pop    %ebp
53307c:	c3                   	ret
53307d:	cc                   	int3
53307e:	cc                   	int3
53307f:	cc                   	int3
533080:	55                   	push   %ebp
533081:	8b ec                	mov    %esp,%ebp
533083:	56                   	push   %esi
533084:	8b 75 08             	mov    0x8(%ebp),%esi
533087:	33 c9                	xor    %ecx,%ecx
533089:	38 4e 0c             	cmp    %cl,0xc(%esi)
53308c:	75 5c                	jne    0x5330ea
53308e:	39 8e d8 00 00 00    	cmp    %ecx,0xd8(%esi)
533094:	75 54                	jne    0x5330ea
533096:	8b 46 3c             	mov    0x3c(%esi),%eax
533099:	8b 00                	mov    (%eax),%eax
53309b:	38 4e 0d             	cmp    %cl,0xd(%esi)
53309e:	75 42                	jne    0x5330e2
5330a0:	38 4e 04             	cmp    %cl,0x4(%esi)
5330a3:	75 0a                	jne    0x5330af
5330a5:	83 38 02             	cmpl   $0x2,(%eax)
5330a8:	7c 38                	jl     0x5330e2
5330aa:	39 48 34             	cmp    %ecx,0x34(%eax)
5330ad:	74 33                	je     0x5330e2
5330af:	57                   	push   %edi
5330b0:	8b 7e 40             	mov    0x40(%esi),%edi
5330b3:	8b 07                	mov    (%edi),%eax
5330b5:	85 c0                	test   %eax,%eax
5330b7:	74 0f                	je     0x5330c8
5330b9:	8b 40 04             	mov    0x4(%eax),%eax
5330bc:	57                   	push   %edi
5330bd:	ff d0                	call   *%eax
5330bf:	83 c4 04             	add    $0x4,%esp
5330c2:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
5330c8:	56                   	push   %esi
5330c9:	e8 b2 9c fd ff       	call   0x50cd80
5330ce:	83 c4 04             	add    $0x4,%esp
5330d1:	8b c8                	mov    %eax,%ecx
5330d3:	5f                   	pop    %edi
5330d4:	85 c9                	test   %ecx,%ecx
5330d6:	75 1b                	jne    0x5330f3
5330d8:	c6 46 05 05          	movb   $0x5,0x5(%esi)
5330dc:	88 46 10             	mov    %al,0x10(%esi)
5330df:	5e                   	pop    %esi
5330e0:	5d                   	pop    %ebp
5330e1:	c3                   	ret
5330e2:	b8 0e 00 00 00       	mov    $0xe,%eax
5330e7:	5e                   	pop    %esi
5330e8:	5d                   	pop    %ebp
5330e9:	c3                   	ret
5330ea:	8b 45 0c             	mov    0xc(%ebp),%eax
5330ed:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
5330f3:	8b c1                	mov    %ecx,%eax
5330f5:	5e                   	pop    %esi
5330f6:	5d                   	pop    %ebp
5330f7:	c3                   	ret
5330f8:	cc                   	int3
5330f9:	cc                   	int3
5330fa:	cc                   	int3
5330fb:	cc                   	int3
5330fc:	cc                   	int3
5330fd:	cc                   	int3
5330fe:	cc                   	int3
5330ff:	cc                   	int3
533100:	55                   	push   %ebp
533101:	8b ec                	mov    %esp,%ebp
533103:	ff 75 0c             	push   0xc(%ebp)
533106:	6a 00                	push   $0x0
533108:	ff 75 10             	push   0x10(%ebp)
53310b:	e8 f0 08 0b 00       	call   0x5e3a00
533110:	8b 45 08             	mov    0x8(%ebp),%eax
533113:	83 c4 0c             	add    $0xc,%esp
533116:	8b 48 3c             	mov    0x3c(%eax),%ecx
533119:	83 39 00             	cmpl   $0x0,(%ecx)
53311c:	74 21                	je     0x53313f
53311e:	8b 01                	mov    (%ecx),%eax
533120:	6a 00                	push   $0x0
533122:	6a 00                	push   $0x0
533124:	ff 75 0c             	push   0xc(%ebp)
533127:	8b 40 08             	mov    0x8(%eax),%eax
53312a:	ff 75 10             	push   0x10(%ebp)
53312d:	51                   	push   %ecx
53312e:	ff d0                	call   *%eax
533130:	33 c9                	xor    %ecx,%ecx
533132:	83 c4 14             	add    $0x14,%esp
533135:	3d 0a 02 00 00       	cmp    $0x20a,%eax
53313a:	0f 44 c1             	cmove  %ecx,%eax
53313d:	5d                   	pop    %ebp
53313e:	c3                   	ret
53313f:	33 c0                	xor    %eax,%eax
533141:	5d                   	pop    %ebp
533142:	c3                   	ret
533143:	cc                   	int3
533144:	cc                   	int3
533145:	cc                   	int3
533146:	cc                   	int3
533147:	cc                   	int3
533148:	cc                   	int3
533149:	cc                   	int3
53314a:	cc                   	int3
53314b:	cc                   	int3