557f5b:	3c a4                	cmp    $0xa4,%al
557f5d:	74 2a                	je     0x557f89
557f5f:	3c 6f                	cmp    $0x6f,%al
557f61:	74 26                	je     0x557f89
557f63:	57                   	push   %edi
557f64:	ff 33                	push   (%ebx)
557f66:	e8 75 e3 fc ff       	call   0x5262e0
557f6b:	83 c4 08             	add    $0x8,%esp
557f6e:	85 c0                	test   %eax,%eax
557f70:	74 04                	je     0x557f76
557f72:	8b 00                	mov    (%eax),%eax
557f74:	eb 05                	jmp    0x557f7b
557f76:	b8 60 86 6b 00       	mov    $0x6b8660,%eax
557f7b:	50                   	push   %eax
557f7c:	57                   	push   %edi
557f7d:	ff 33                	push   (%ebx)
557f7f:	e8 7c b5 fc ff       	call   0x523500
557f84:	83 c4 0c             	add    $0xc,%esp
557f87:	8b f0                	mov    %eax,%esi
557f89:	81 66 04 ff fe ff ff 	andl   $0xfffffeff,0x4(%esi)
557f90:	e9 80 00 00 00       	jmp    0x558015
557f95:	80 f9 b0             	cmp    $0xb0,%cl
557f98:	75 0e                	jne    0x557fa8
557f9a:	8b 46 1c             	mov    0x1c(%esi),%eax
557f9d:	3b 43 04             	cmp    0x4(%ebx),%eax
557fa0:	75 06                	jne    0x557fa8
557fa2:	8b 43 08             	mov    0x8(%ebx),%eax
557fa5:	89 46 1c             	mov    %eax,0x1c(%esi)
557fa8:	ff 76 0c             	push   0xc(%esi)
557fab:	53                   	push   %ebx
557fac:	e8 5f fc ff ff       	call   0x557c10
557fb1:	ff 76 10             	push   0x10(%esi)
557fb4:	89 46 0c             	mov    %eax,0xc(%esi)
557fb7:	53                   	push   %ebx
557fb8:	e8 53 fc ff ff       	call   0x557c10
557fbd:	83 c4 10             	add    $0x10,%esp
557fc0:	89 46 10             	mov    %eax,0x10(%esi)
557fc3:	f7 46 04 00 08 00 00 	testl  $0x800,0x4(%esi)
557fca:	74 10                	je     0x557fdc
557fcc:	6a 01                	push   $0x1
557fce:	ff 76 14             	push   0x14(%esi)
557fd1:	53                   	push   %ebx
557fd2:	e8 79 00 00 00       	call   0x558050
557fd7:	83 c4 0c             	add    $0xc,%esp
557fda:	eb 0c                	jmp    0x557fe8
557fdc:	ff 76 14             	push   0x14(%esi)
557fdf:	53                   	push   %ebx
557fe0:	e8 3b fe ff ff       	call   0x557e20
557fe5:	83 c4 08             	add    $0x8,%esp
557fe8:	f7 46 04 00 00 00 01 	testl  $0x1000000,0x4(%esi)
557fef:	74 27                	je     0x558018
557ff1:	8b 7e 2c             	mov    0x2c(%esi),%edi
557ff4:	ff 77 28             	push   0x28(%edi)
557ff7:	53                   	push   %ebx
557ff8:	e8 13 fc ff ff       	call   0x557c10
557ffd:	ff 77 08             	push   0x8(%edi)
558000:	89 47 28             	mov    %eax,0x28(%edi)
558003:	53                   	push   %ebx
558004:	e8 17 fe ff ff       	call   0x557e20
558009:	ff 77 0c             	push   0xc(%edi)
55800c:	53                   	push   %ebx
55800d:	e8 0e fe ff ff       	call   0x557e20
558012:	83 c4 18             	add    $0x18,%esp
558015:	8b 7d c0             	mov    -0x40(%ebp),%edi
558018:	8b 55 c4             	mov    -0x3c(%ebp),%edx
55801b:	8b 45 b8             	mov    -0x48(%ebp),%eax
55801e:	89 32                	mov    %esi,(%edx)
558020:	47                   	inc    %edi
558021:	83 c2 14             	add    $0x14,%edx
558024:	89 7d c0             	mov    %edi,-0x40(%ebp)
558027:	89 55 c4             	mov    %edx,-0x3c(%ebp)
55802a:	3b 38                	cmp    (%eax),%edi
55802c:	0f 8c 2e fe ff ff    	jl     0x557e60
558032:	5e                   	pop    %esi
558033:	5f                   	pop    %edi
558034:	8b 4d fc             	mov    -0x4(%ebp),%ecx
558037:	33 cd                	xor    %ebp,%ecx
558039:	5b                   	pop    %ebx
55803a:	e8 9b 94 08 00       	call   0x5e14da
55803f:	8b e5                	mov    %ebp,%esp
558041:	5d                   	pop    %ebp
558042:	c3                   	ret
558043:	cc                   	int3
558044:	cc                   	int3
558045:	cc                   	int3
558046:	cc                   	int3
558047:	cc                   	int3
558048:	cc                   	int3
558049:	cc                   	int3
55804a:	cc                   	int3
55804b:	cc                   	int3
55804c:	cc                   	int3
55804d:	cc                   	int3
55804e:	cc                   	int3
55804f:	cc                   	int3
558050:	55                   	push   %ebp
558051:	8b ec                	mov    %esp,%ebp
558053:	56                   	push   %esi
558054:	8b 75 0c             	mov    0xc(%ebp),%esi
558057:	85 f6                	test   %esi,%esi
558059:	0f 84 83 00 00 00    	je     0x5580e2
55805f:	53                   	push   %ebx
558060:	8b 5d 08             	mov    0x8(%ebp),%ebx
558063:	57                   	push   %edi
558064:	ff 76 1c             	push   0x1c(%esi)
558067:	53                   	push   %ebx
558068:	e8 b3 fd ff ff       	call   0x557e20
55806d:	ff 76 28             	push   0x28(%esi)
558070:	53                   	push   %ebx
558071:	e8 aa fd ff ff       	call   0x557e20
558076:	ff 76 30             	push   0x30(%esi)
558079:	53                   	push   %ebx
55807a:	e8 a1 fd ff ff       	call   0x557e20
55807f:	ff 76 2c             	push   0x2c(%esi)
558082:	53                   	push   %ebx
558083:	e8 88 fb ff ff       	call   0x557c10
558088:	ff 76 24             	push   0x24(%esi)
55808b:	89 46 2c             	mov    %eax,0x2c(%esi)
55808e:	53                   	push   %ebx
55808f:	e8 7c fb ff ff       	call   0x557c10
558094:	89 46 24             	mov    %eax,0x24(%esi)
558097:	83 c4 28             	add    $0x28,%esp
55809a:	8b 46 20             	mov    0x20(%esi),%eax
55809d:	8b 38                	mov    (%eax),%edi
55809f:	85 ff                	test   %edi,%edi
5580a1:	7e 2d                	jle    0x5580d0
5580a3:	8d 70 30             	lea    0x30(%eax),%esi
5580a6:	6a 01                	push   $0x1
5580a8:	ff 76 ec             	push   -0x14(%esi)
5580ab:	53                   	push   %ebx
5580ac:	e8 9f ff ff ff       	call   0x558050
5580b1:	83 c4 0c             	add    $0xc,%esp
5580b4:	f6 06 04             	testb  $0x4,(%esi)
5580b7:	74 0c                	je     0x5580c5
5580b9:	ff 76 18             	push   0x18(%esi)
5580bc:	53                   	push   %ebx
5580bd:	e8 5e fd ff ff       	call   0x557e20
5580c2:	83 c4 08             	add    $0x8,%esp
5580c5:	4f                   	dec    %edi
5580c6:	83 c6 48             	add    $0x48,%esi
5580c9:	85 ff                	test   %edi,%edi
5580cb:	7f d9                	jg     0x5580a6
5580cd:	8b 75 0c             	mov    0xc(%ebp),%esi
5580d0:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
5580d4:	74 0a                	je     0x5580e0
5580d6:	8b 76 34             	mov    0x34(%esi),%esi
5580d9:	89 75 0c             	mov    %esi,0xc(%ebp)
5580dc:	85 f6                	test   %esi,%esi
5580de:	75 84                	jne    0x558064
5580e0:	5f                   	pop    %edi
5580e1:	5b                   	pop    %ebx
5580e2:	5e                   	pop    %esi
5580e3:	5d                   	pop    %ebp
5580e4:	c3                   	ret
5580e5:	cc                   	int3
5580e6:	cc                   	int3
5580e7:	cc                   	int3
5580e8:	cc                   	int3
5580e9:	cc                   	int3
5580ea:	cc                   	int3
5580eb:	cc                   	int3
5580ec:	cc                   	int3
5580ed:	cc                   	int3
5580ee:	cc                   	int3
5580ef:	cc                   	int3
5580f0:	55                   	push   %ebp
5580f1:	8b ec                	mov    %esp,%ebp
5580f3:	83 ec 20             	sub    $0x20,%esp
5580f6:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5580fb:	33 c5                	xor    %ebp,%eax
5580fd:	89 45 fc             	mov    %eax,-0x4(%ebp)
558100:	56                   	push   %esi
558101:	8b 75 08             	mov    0x8(%ebp),%esi
558104:	8b 46 28             	mov    0x28(%esi),%eax
558107:	85 c0                	test   %eax,%eax
558109:	0f 85 c0 01 00 00    	jne    0x5582cf
55810f:	39 86 d8 00 00 00    	cmp    %eax,0xd8(%esi)
558115:	75 13                	jne    0x55812a
558117:	6a 04                	push   $0x4
558119:	56                   	push   %esi
55811a:	e8 01 67 fb ff       	call   0x50e820
55811f:	83 c4 08             	add    $0x8,%esp
558122:	85 c0                	test   %eax,%eax
558124:	0f 85 a5 01 00 00    	jne    0x5582cf
55812a:	80 7e 07 00          	cmpb   $0x0,0x7(%esi)
55812e:	53                   	push   %ebx
55812f:	57                   	push   %edi
558130:	0f 85 6f 01 00 00    	jne    0x5582a5
558136:	8b 46 40             	mov    0x40(%esi),%eax
558139:	83 38 00             	cmpl   $0x0,(%eax)
55813c:	0f 84 57 01 00 00    	je     0x558299
558142:	80 7e 05 04          	cmpb   $0x4,0x5(%esi)
558146:	0f 84 4d 01 00 00    	je     0x558299
55814c:	8b 46 3c             	mov    0x3c(%esi),%eax
55814f:	50                   	push   %eax
558150:	8b 08                	mov    (%eax),%ecx
558152:	8b 41 30             	mov    0x30(%ecx),%eax
558155:	ff d0                	call   *%eax
558157:	8b f8                	mov    %eax,%edi
558159:	83 c4 04             	add    $0x4,%esp
55815c:	8b df                	mov    %edi,%ebx
55815e:	81 e3 00 02 00 00    	and    $0x200,%ebx
558164:	0f 85 cc 00 00 00    	jne    0x558236
55816a:	8b 0d a4 27 6b 00    	mov    0x6b27a4,%ecx
558170:	89 4d f0             	mov    %ecx,-0x10(%ebp)
558173:	8b 0d a8 27 6b 00    	mov    0x6b27a8,%ecx
558179:	89 4d f4             	mov    %ecx,-0xc(%ebp)
55817c:	8b 4e 2c             	mov    0x2c(%esi),%ecx
55817f:	0f c9                	bswap  %ecx
558181:	56                   	push   %esi
558182:	89 4d f8             	mov    %ecx,-0x8(%ebp)
558185:	e8 86 ff fa ff       	call   0x508110
55818a:	8b 4e 40             	mov    0x40(%esi),%ecx
55818d:	52                   	push   %edx
55818e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
558191:	ff 75 e4             	push   -0x1c(%ebp)
558194:	8b 01                	mov    (%ecx),%eax
558196:	89 55 e0             	mov    %edx,-0x20(%ebp)
558199:	8d 55 e8             	lea    -0x18(%ebp),%edx
55819c:	6a 08                	push   $0x8
55819e:	52                   	push   %edx
55819f:	8b 40 08             	mov    0x8(%eax),%eax
5581a2:	51                   	push   %ecx
5581a3:	ff d0                	call   *%eax
5581a5:	83 c4 18             	add    $0x18,%esp
5581a8:	85 c0                	test   %eax,%eax
5581aa:	75 37                	jne    0x5581e3
5581ac:	8d 4d e8             	lea    -0x18(%ebp),%ecx
5581af:	8b 01                	mov    (%ecx),%eax
5581b1:	3b 05 a4 27 6b 00    	cmp    0x6b27a4,%eax
5581b7:	75 35                	jne    0x5581ee
5581b9:	8b 41 04             	mov    0x4(%ecx),%eax
5581bc:	3b 05 a8 27 6b 00    	cmp    0x6b27a8,%eax
5581c2:	75 2a                	jne    0x5581ee
5581c4:	ff 75 e0             	push   -0x20(%ebp)
5581c7:	8b 46 40             	mov    0x40(%esi),%eax
5581ca:	ff 75 e4             	push   -0x1c(%ebp)
5581cd:	6a 01                	push   $0x1
5581cf:	8b 08                	mov    (%eax),%ecx
5581d1:	68 3b 16 6b 00       	push   $0x6b163b
5581d6:	50                   	push   %eax
5581d7:	8b 41 0c             	mov    0xc(%ecx),%eax
5581da:	ff d0                	call   *%eax
5581dc:	83 c4 14             	add    $0x14,%esp
5581df:	85 c0                	test   %eax,%eax
5581e1:	74 0b                	je     0x5581ee
5581e3:	3d 0a 02 00 00       	cmp    $0x20a,%eax
5581e8:	0f 85 df 00 00 00    	jne    0x5582cd
5581ee:	80 7e 08 00          	cmpb   $0x0,0x8(%esi)
5581f2:	74 20                	je     0x558214
5581f4:	f7 c7 00 04 00 00    	test   $0x400,%edi
5581fa:	75 18                	jne    0x558214
5581fc:	0f b6 46 0a          	movzbl 0xa(%esi),%eax
558200:	50                   	push   %eax
558201:	ff 76 40             	push   0x40(%esi)
558204:	e8 77 9c fd ff       	call   0x531e80
558209:	83 c4 08             	add    $0x8,%esp
55820c:	85 c0                	test   %eax,%eax
55820e:	0f 85 b9 00 00 00    	jne    0x5582cd
558214:	ff 76 54             	push   0x54(%esi)
558217:	8b 46 40             	mov    0x40(%esi),%eax
55821a:	8d 55 f0             	lea    -0x10(%ebp),%edx
55821d:	ff 76 50             	push   0x50(%esi)
558220:	6a 0c                	push   $0xc
558222:	8b 08                	mov    (%eax),%ecx
558224:	52                   	push   %edx
558225:	50                   	push   %eax
558226:	8b 41 0c             	mov    0xc(%ecx),%eax
558229:	ff d0                	call   *%eax
55822b:	83 c4 14             	add    $0x14,%esp
55822e:	85 c0                	test   %eax,%eax
558230:	0f 85 97 00 00 00    	jne    0x5582cd
558236:	f7 c7 00 04 00 00    	test   $0x400,%edi
55823c:	75 24                	jne    0x558262
55823e:	0f b6 46 0a          	movzbl 0xa(%esi),%eax
558242:	33 c9                	xor    %ecx,%ecx
558244:	80 7e 0a 03          	cmpb   $0x3,0xa(%esi)
558248:	ba 10 00 00 00       	mov    $0x10,%edx
55824d:	0f 44 ca             	cmove  %edx,%ecx
558250:	0b c8                	or     %eax,%ecx
558252:	51                   	push   %ecx
558253:	ff 76 40             	push   0x40(%esi)
558256:	e8 25 9c fd ff       	call   0x531e80
55825b:	83 c4 08             	add    $0x8,%esp
55825e:	85 c0                	test   %eax,%eax
558260:	75 6b                	jne    0x5582cd
558262:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
558266:	8b 46 48             	mov    0x48(%esi),%eax
558269:	89 46 50             	mov    %eax,0x50(%esi)
55826c:	8b 46 4c             	mov    0x4c(%esi),%eax
55826f:	89 46 54             	mov    %eax,0x54(%esi)
558272:	74 31                	je     0x5582a5
558274:	85 db                	test   %ebx,%ebx
558276:	75 2d                	jne    0x5582a5
558278:	56                   	push   %esi
558279:	89 5e 2c             	mov    %ebx,0x2c(%esi)
55827c:	e8 9f 08 01 00       	call   0x568b20
558281:	83 c4 04             	add    $0x4,%esp
558284:	85 c0                	test   %eax,%eax
558286:	74 1d                	je     0x5582a5
558288:	5f                   	pop    %edi
558289:	5b                   	pop    %ebx
55828a:	5e                   	pop    %esi
55828b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
55828e:	33 cd                	xor    %ebp,%ecx
558290:	e8 45 92 08 00       	call   0x5e14da
558295:	8b e5                	mov    %ebp,%esp
558297:	5d                   	pop    %ebp
558298:	c3                   	ret
558299:	8b 46 48             	mov    0x48(%esi),%eax
55829c:	89 46 50             	mov    %eax,0x50(%esi)
55829f:	8b 46 4c             	mov    0x4c(%esi),%eax
5582a2:	89 46 54             	mov    %eax,0x54(%esi)
5582a5:	8b 8e d4 00 00 00    	mov    0xd4(%esi),%ecx
5582ab:	8b 01                	mov    (%ecx),%eax
5582ad:	85 c0                	test   %eax,%eax
5582af:	74 10                	je     0x5582c1
5582b1:	ba f7 ff 00 00       	mov    $0xfff7,%edx
5582b6:	66 21 50 1c          	and    %dx,0x1c(%eax)
5582ba:	8b 40 20             	mov    0x20(%eax),%eax
5582bd:	85 c0                	test   %eax,%eax
5582bf:	75 f5                	jne    0x5582b6
5582c1:	8b 41 04             	mov    0x4(%ecx),%eax
5582c4:	89 41 08             	mov    %eax,0x8(%ecx)
5582c7:	33 c0                	xor    %eax,%eax
5582c9:	c6 46 10 04          	movb   $0x4,0x10(%esi)
5582cd:	5f                   	pop    %edi
5582ce:	5b                   	pop    %ebx
5582cf:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5582d2:	33 cd                	xor    %ebp,%ecx
5582d4:	5e                   	pop    %esi
5582d5:	e8 00 92 08 00       	call   0x5e14da
5582da:	8b e5                	mov    %ebp,%esp
5582dc:	5d                   	pop    %ebp
5582dd:	c3                   	ret
5582de:	cc                   	int3
5582df:	cc                   	int3
5582e0:	55                   	push   %ebp
5582e1:	8b ec                	mov    %esp,%ebp
5582e3:	51                   	push   %ecx
5582e4:	53                   	push   %ebx
5582e5:	8b 5d 08             	mov    0x8(%ebp),%ebx
5582e8:	56                   	push   %esi
5582e9:	57                   	push   %edi
5582ea:	8b 7d 0c             	mov    0xc(%ebp),%edi
5582ed:	33 f6                	xor    %esi,%esi
5582ef:	8b 3f                	mov    (%edi),%edi
5582f1:	8a 8e 10 31 6b 00    	mov    0x6b3110(%esi),%cl
5582f7:	88 4d ff             	mov    %cl,-0x1(%ebp)
5582fa:	85 ff                	test   %edi,%edi