575cca:	74 11                	je     0x575cdd
575ccc:	c1 e7 08             	shl    $0x8,%edi
575ccf:	ff 4d fc             	decl   -0x4(%ebp)
575cd2:	8b 45 fc             	mov    -0x4(%ebp),%eax
575cd5:	85 c0                	test   %eax,%eax
575cd7:	0f 8f 6b ff ff ff    	jg     0x575c48
575cdd:	5f                   	pop    %edi
575cde:	5e                   	pop    %esi
575cdf:	5b                   	pop    %ebx
575ce0:	59                   	pop    %ecx
575ce1:	5d                   	pop    %ebp
575ce2:	c2 08 00             	ret    $0x8
575ce5:	90                   	nop
575ce6:	90                   	nop
575ce7:	90                   	nop
575ce8:	53                   	push   %ebx
575ce9:	56                   	push   %esi
575cea:	33 c9                	xor    %ecx,%ecx
575cec:	8b 58 14             	mov    0x14(%eax),%ebx
575cef:	eb 12                	jmp    0x575d03
575cf1:	8b 33                	mov    (%ebx),%esi
575cf3:	8b 76 24             	mov    0x24(%esi),%esi
575cf6:	3b f2                	cmp    %edx,%esi
575cf8:	75 05                	jne    0x575cff
575cfa:	8b c1                	mov    %ecx,%eax
575cfc:	5e                   	pop    %esi
575cfd:	5b                   	pop    %ebx
575cfe:	c3                   	ret
575cff:	41                   	inc    %ecx
575d00:	83 c3 04             	add    $0x4,%ebx
575d03:	0f b7 70 10          	movzwl 0x10(%eax),%esi
575d07:	3b ce                	cmp    %esi,%ecx
575d09:	7c e6                	jl     0x575cf1
575d0b:	5e                   	pop    %esi
575d0c:	5b                   	pop    %ebx
575d0d:	c3                   	ret
575d0e:	8b c0                	mov    %eax,%eax
575d10:	53                   	push   %ebx
575d11:	b8 04 00 00 00       	mov    $0x4,%eax
575d16:	e8 61 26 00 00       	call   0x57837c
575d1b:	8b d8                	mov    %eax,%ebx
575d1d:	85 c0                	test   %eax,%eax
575d1f:	75 04                	jne    0x575d25
575d21:	33 c0                	xor    %eax,%eax
575d23:	5b                   	pop    %ebx
575d24:	c3                   	ret
575d25:	33 d2                	xor    %edx,%edx
575d27:	8b c3                	mov    %ebx,%eax
575d29:	89 13                	mov    %edx,(%ebx)
575d2b:	5b                   	pop    %ebx
575d2c:	c3                   	ret
575d2d:	90                   	nop
575d2e:	90                   	nop
575d2f:	90                   	nop
575d30:	e8 4f 26 00 00       	call   0x578384
575d35:	c3                   	ret
575d36:	90                   	nop
575d37:	90                   	nop
575d38:	53                   	push   %ebx
575d39:	56                   	push   %esi
575d3a:	57                   	push   %edi
575d3b:	51                   	push   %ecx
575d3c:	89 14 24             	mov    %edx,(%esp)
575d3f:	8b f8                	mov    %eax,%edi
575d41:	33 c0                	xor    %eax,%eax
575d43:	e8 98 02 00 00       	call   0x575fe0
575d48:	8b d8                	mov    %eax,%ebx
575d4a:	85 c0                	test   %eax,%eax
575d4c:	75 07                	jne    0x575d55
575d4e:	33 c0                	xor    %eax,%eax
575d50:	e9 8b 01 00 00       	jmp    0x575ee0
575d55:	8b d3                	mov    %ebx,%edx
575d57:	8b c7                	mov    %edi,%eax
575d59:	e8 ca 19 00 00       	call   0x577728
575d5e:	85 c0                	test   %eax,%eax
575d60:	75 07                	jne    0x575d69
575d62:	66 81 3b 00 ff       	cmpw   $0xff00,(%ebx)
575d67:	73 0e                	jae    0x575d77
575d69:	8b c3                	mov    %ebx,%eax
575d6b:	e8 b8 02 00 00       	call   0x576028
575d70:	33 c0                	xor    %eax,%eax
575d72:	e9 69 01 00 00       	jmp    0x575ee0
575d77:	0f b7 03             	movzwl (%ebx),%eax
575d7a:	e8 29 1e 00 00       	call   0x577ba8
575d7f:	83 c0 08             	add    $0x8,%eax
575d82:	89 43 60             	mov    %eax,0x60(%ebx)
575d85:	66 8b 03             	mov    (%ebx),%ax
575d88:	66 3d 4f ff          	cmp    $0xff4f,%ax
575d8c:	0f 84 21 01 00 00    	je     0x575eb3
575d92:	66 3d 93 ff          	cmp    $0xff93,%ax
575d96:	0f 84 17 01 00 00    	je     0x575eb3
575d9c:	66 3d d9 ff          	cmp    $0xffd9,%ax
575da0:	0f 84 0d 01 00 00    	je     0x575eb3
575da6:	66 3d 92 ff          	cmp    $0xff92,%ax
575daa:	0f 84 03 01 00 00    	je     0x575eb3
575db0:	66 8b 03             	mov    (%ebx),%ax
575db3:	66 3d 30 ff          	cmp    $0xff30,%ax
575db7:	72 0a                	jb     0x575dc3
575db9:	66 3d 3f ff          	cmp    $0xff3f,%ax
575dbd:	0f 86 f0 00 00 00    	jbe    0x575eb3
575dc3:	8d 53 02             	lea    0x2(%ebx),%edx
575dc6:	8b c7                	mov    %edi,%eax
575dc8:	e8 5b 19 00 00       	call   0x577728
575dcd:	85 c0                	test   %eax,%eax
575dcf:	75 07                	jne    0x575dd8
575dd1:	66 83 7b 02 03       	cmpw   $0x3,0x2(%ebx)
575dd6:	73 0e                	jae    0x575de6
575dd8:	8b c3                	mov    %ebx,%eax
575dda:	e8 49 02 00 00       	call   0x576028
575ddf:	33 c0                	xor    %eax,%eax
575de1:	e9 fa 00 00 00       	jmp    0x575ee0
575de6:	66 81 43 02 fe ff    	addw   $0xfffe,0x2(%ebx)
575dec:	33 d2                	xor    %edx,%edx
575dee:	33 c0                	xor    %eax,%eax
575df0:	e8 27 26 00 00       	call   0x57841c
575df5:	8b f0                	mov    %eax,%esi
575df7:	85 c0                	test   %eax,%eax
575df9:	75 0e                	jne    0x575e09
575dfb:	8b c3                	mov    %ebx,%eax
575dfd:	e8 26 02 00 00       	call   0x576028
575e02:	33 c0                	xor    %eax,%eax
575e04:	e9 d7 00 00 00       	jmp    0x575ee0
575e09:	0f b7 4b 02          	movzwl 0x2(%ebx),%ecx
575e0d:	8b d7                	mov    %edi,%edx
575e0f:	8b c6                	mov    %esi,%eax
575e11:	e8 12 31 00 00       	call   0x578f28
575e16:	85 c0                	test   %eax,%eax
575e18:	75 0f                	jne    0x575e29
575e1a:	33 c9                	xor    %ecx,%ecx
575e1c:	33 d2                	xor    %edx,%edx
575e1e:	8b c6                	mov    %esi,%eax
575e20:	e8 43 2d 00 00       	call   0x578b68
575e25:	85 c0                	test   %eax,%eax
575e27:	7d 15                	jge    0x575e3e
575e29:	8b c6                	mov    %esi,%eax
575e2b:	e8 0c 29 00 00       	call   0x57873c
575e30:	8b c3                	mov    %ebx,%eax
575e32:	e8 f1 01 00 00       	call   0x576028
575e37:	33 c0                	xor    %eax,%eax
575e39:	e9 a2 00 00 00       	jmp    0x575ee0
575e3e:	8b c3                	mov    %ebx,%eax
575e40:	8b ce                	mov    %esi,%ecx
575e42:	8b 14 24             	mov    (%esp),%edx
575e45:	8b 78 60             	mov    0x60(%eax),%edi
575e48:	ff 57 04             	call   *0x4(%edi)
575e4b:	85 c0                	test   %eax,%eax
575e4d:	74 17                	je     0x575e66
575e4f:	33 c0                	xor    %eax,%eax
575e51:	89 43 60             	mov    %eax,0x60(%ebx)
575e54:	8b c3                	mov    %ebx,%eax
575e56:	e8 cd 01 00 00       	call   0x576028
575e5b:	8b c6                	mov    %esi,%eax
575e5d:	e8 da 28 00 00       	call   0x57873c
575e62:	33 c0                	xor    %eax,%eax
575e64:	eb 7a                	jmp    0x575ee0
575e66:	e8 e1 40 00 00       	call   0x579f4c
575e6b:	85 c0                	test   %eax,%eax
575e6d:	7e 0c                	jle    0x575e7b
575e6f:	ba 80 2e 6a 00       	mov    $0x6a2e80,%edx
575e74:	8b c3                	mov    %ebx,%eax
575e76:	e8 cd 01 00 00       	call   0x576048
575e7b:	8b c6                	mov    %esi,%eax
575e7d:	e8 76 2d 00 00       	call   0x578bf8
575e82:	0f b7 53 02          	movzwl 0x2(%ebx),%edx
575e86:	3b c2                	cmp    %edx,%eax
575e88:	74 20                	je     0x575eaa
575e8a:	8b c6                	mov    %esi,%eax
575e8c:	e8 67 2d 00 00       	call   0x578bf8
575e91:	0f b7 53 02          	movzwl 0x2(%ebx),%edx
575e95:	2b d0                	sub    %eax,%edx
575e97:	52                   	push   %edx
575e98:	68 fc 22 6a 00       	push   $0x6a22fc
575e9d:	68 80 2e 6a 00       	push   $0x6a2e80
575ea2:	e8 25 42 00 00       	call   0x57a0cc
575ea7:	83 c4 0c             	add    $0xc,%esp
575eaa:	8b c6                	mov    %esi,%eax
575eac:	e8 8b 28 00 00       	call   0x57873c
575eb1:	eb 1b                	jmp    0x575ece
575eb3:	66 c7 43 02 00 00    	movw   $0x0,0x2(%ebx)
575eb9:	e8 8e 40 00 00       	call   0x579f4c
575ebe:	85 c0                	test   %eax,%eax
575ec0:	7e 0c                	jle    0x575ece
575ec2:	ba 80 2e 6a 00       	mov    $0x6a2e80,%edx
575ec7:	8b c3                	mov    %ebx,%eax
575ec9:	e8 7a 01 00 00       	call   0x576048
575ece:	66 81 3b 51 ff       	cmpw   $0xff51,(%ebx)
575ed3:	75 09                	jne    0x575ede
575ed5:	0f b7 53 2c          	movzwl 0x2c(%ebx),%edx
575ed9:	8b 0c 24             	mov    (%esp),%ecx
575edc:	89 11                	mov    %edx,(%ecx)
575ede:	8b c3                	mov    %ebx,%eax
575ee0:	5a                   	pop    %edx
575ee1:	5f                   	pop    %edi
575ee2:	5e                   	pop    %esi
575ee3:	5b                   	pop    %ebx
575ee4:	c3                   	ret
575ee5:	90                   	nop
575ee6:	90                   	nop
575ee7:	90                   	nop
575ee8:	53                   	push   %ebx
575ee9:	56                   	push   %esi
575eea:	57                   	push   %edi
575eeb:	55                   	push   %ebp
575eec:	51                   	push   %ecx
575eed:	8b d9                	mov    %ecx,%ebx
575eef:	89 14 24             	mov    %edx,(%esp)
575ef2:	8b f8                	mov    %eax,%edi
575ef4:	66 8b 13             	mov    (%ebx),%dx
575ef7:	8b c7                	mov    %edi,%eax
575ef9:	e8 ee 18 00 00       	call   0x5777ec
575efe:	85 c0                	test   %eax,%eax
575f00:	74 08                	je     0x575f0a
575f02:	83 c8 ff             	or     $0xffffffff,%eax
575f05:	e9 cf 00 00 00       	jmp    0x575fd9
575f0a:	8b 53 60             	mov    0x60(%ebx),%edx
575f0d:	8b 4a 08             	mov    0x8(%edx),%ecx
575f10:	85 c9                	test   %ecx,%ecx
575f12:	0f 84 9a 00 00 00    	je     0x575fb2
575f18:	33 d2                	xor    %edx,%edx
575f1a:	33 c0                	xor    %eax,%eax
575f1c:	e8 fb 24 00 00       	call   0x57841c
575f21:	8b f0                	mov    %eax,%esi
575f23:	85 c0                	test   %eax,%eax
575f25:	75 08                	jne    0x575f2f
575f27:	83 c8 ff             	or     $0xffffffff,%eax
575f2a:	e9 aa 00 00 00       	jmp    0x575fd9
575f2f:	8b c3                	mov    %ebx,%eax
575f31:	8b ce                	mov    %esi,%ecx
575f33:	8b 14 24             	mov    (%esp),%edx
575f36:	8b 68 60             	mov    0x60(%eax),%ebp
575f39:	ff 55 08             	call   *0x8(%ebp)
575f3c:	85 c0                	test   %eax,%eax
575f3e:	74 0f                	je     0x575f4f
575f40:	8b c6                	mov    %esi,%eax
575f42:	e8 f5 27 00 00       	call   0x57873c
575f47:	83 c8 ff             	or     $0xffffffff,%eax
575f4a:	e9 8a 00 00 00       	jmp    0x575fd9
575f4f:	8b c6                	mov    %esi,%eax
575f51:	e8 a2 2c 00 00       	call   0x578bf8
575f56:	8b e8                	mov    %eax,%ebp
575f58:	85 c0                	test   %eax,%eax
575f5a:	7d 0c                	jge    0x575f68
575f5c:	8b c6                	mov    %esi,%eax
575f5e:	e8 d9 27 00 00       	call   0x57873c
575f63:	83 c8 ff             	or     $0xffffffff,%eax
575f66:	eb 71                	jmp    0x575fd9
575f68:	66 89 6b 02          	mov    %bp,0x2(%ebx)
575f6c:	33 c9                	xor    %ecx,%ecx
575f6e:	33 d2                	xor    %edx,%edx
575f70:	8b c6                	mov    %esi,%eax
575f72:	e8 f1 2b 00 00       	call   0x578b68
575f77:	85 c0                	test   %eax,%eax
575f79:	7c 24                	jl     0x575f9f
575f7b:	66 8b 53 02          	mov    0x2(%ebx),%dx
575f7f:	8b c7                	mov    %edi,%eax
575f81:	66 83 c2 02          	add    $0x2,%dx
575f85:	e8 62 18 00 00       	call   0x5777ec
575f8a:	85 c0                	test   %eax,%eax
575f8c:	75 11                	jne    0x575f9f
575f8e:	0f b7 4b 02          	movzwl 0x2(%ebx),%ecx
575f92:	8b d6                	mov    %esi,%edx
575f94:	8b c7                	mov    %edi,%eax
575f96:	e8 8d 2f 00 00       	call   0x578f28
575f9b:	85 c0                	test   %eax,%eax
575f9d:	7d 0c                	jge    0x575fab
575f9f:	8b c6                	mov    %esi,%eax
575fa1:	e8 96 27 00 00       	call   0x57873c
575fa6:	83 c8 ff             	or     $0xffffffff,%eax
575fa9:	eb 2e                	jmp    0x575fd9
575fab:	8b c6                	mov    %esi,%eax
575fad:	e8 8a 27 00 00       	call   0x57873c
575fb2:	66 81 3b 51 ff       	cmpw   $0xff51,(%ebx)
575fb7:	75 09                	jne    0x575fc2
575fb9:	0f b7 53 2c          	movzwl 0x2c(%ebx),%edx
575fbd:	8b 0c 24             	mov    (%esp),%ecx
575fc0:	89 11                	mov    %edx,(%ecx)
575fc2:	e8 85 3f 00 00       	call   0x579f4c
575fc7:	85 c0                	test   %eax,%eax
575fc9:	7e 0c                	jle    0x575fd7
575fcb:	ba 80 2e 6a 00       	mov    $0x6a2e80,%edx
575fd0:	8b c3                	mov    %ebx,%eax
575fd2:	e8 71 00 00 00       	call   0x576048
575fd7:	33 c0                	xor    %eax,%eax
575fd9:	5a                   	pop    %edx
575fda:	5d                   	pop    %ebp
575fdb:	5f                   	pop    %edi
575fdc:	5e                   	pop    %esi
575fdd:	5b                   	pop    %ebx
575fde:	c3                   	ret
575fdf:	90                   	nop
575fe0:	53                   	push   %ebx
575fe1:	56                   	push   %esi
575fe2:	8b f0                	mov    %eax,%esi
575fe4:	b8 64 00 00 00       	mov    $0x64,%eax
575fe9:	e8 8e 23 00 00       	call   0x57837c
575fee:	8b d8                	mov    %eax,%ebx
575ff0:	85 c0                	test   %eax,%eax
575ff2:	75 05                	jne    0x575ff9
575ff4:	33 c0                	xor    %eax,%eax
575ff6:	5e                   	pop    %esi
575ff7:	5b                   	pop    %ebx
575ff8:	c3                   	ret
575ff9:	66 89 33             	mov    %si,(%ebx)
575ffc:	66 c7 43 02 00 00    	movw   $0x0,0x2(%ebx)
576002:	0f b7 03             	movzwl (%ebx),%eax
576005:	e8 9e 1b 00 00       	call   0x577ba8
57600a:	83 c0 08             	add    $0x8,%eax
57600d:	89 43 60             	mov    %eax,0x60(%ebx)
576010:	6a 58                	push   $0x58
576012:	6a 00                	push   $0x0
576014:	8d 53 08             	lea    0x8(%ebx),%edx
576017:	52                   	push   %edx
576018:	e8 8b 4a fe ff       	call   0x55aaa8
57601d:	83 c4 0c             	add    $0xc,%esp
576020:	8b c3                	mov    %ebx,%eax
576022:	5e                   	pop    %esi
576023:	5b                   	pop    %ebx
576024:	c3                   	ret
576025:	90                   	nop
576026:	90                   	nop
576027:	90                   	nop
576028:	53                   	push   %ebx
576029:	8b d8                	mov    %eax,%ebx
57602b:	8b 43 60             	mov    0x60(%ebx),%eax
57602e:	85 c0                	test   %eax,%eax
576030:	74 0d                	je     0x57603f
576032:	8b 10                	mov    (%eax),%edx
576034:	85 d2                	test   %edx,%edx
576036:	74 07                	je     0x57603f
576038:	8b c3                	mov    %ebx,%eax
57603a:	8b 50 60             	mov    0x60(%eax),%edx
57603d:	ff 12                	call   *(%edx)
57603f:	8b c3                	mov    %ebx,%eax
576041:	e8 3e 23 00 00       	call   0x578384
576046:	5b                   	pop    %ebx
576047:	c3                   	ret
576048:	53                   	push   %ebx
576049:	8b d8                	mov    %eax,%ebx
57604b:	56                   	push   %esi
57604c:	8b f2                	mov    %edx,%esi
57604e:	0f b7 03             	movzwl (%ebx),%eax
576051:	e8 52 1b 00 00       	call   0x577ba8
576056:	8b 50 04             	mov    0x4(%eax),%edx
576059:	52                   	push   %edx
57605a:	0f b7 0b             	movzwl (%ebx),%ecx
57605d:	51                   	push   %ecx
57605e:	68 35 23 6a 00       	push   $0x6a2335
576063:	56                   	push   %esi
576064:	e8 63 40 00 00       	call   0x57a0cc
576069:	66 8b 03             	mov    (%ebx),%ax